mirror of
https://github.com/KUlishevgeniy/c22712.git
synced 2026-09-23 23:50:21 +00:00
Delete Задания/task1/Gasanova directory
This commit is contained in:
@@ -1,67 +0,0 @@
|
||||
import telebot
|
||||
import psycopg2
|
||||
from telebot import types
|
||||
import random
|
||||
|
||||
connection = psycopg2.connect(host='localhost', dbname='work', user='dialuna', password='Timka07') # да-да :D
|
||||
cursor = connection.cursor()
|
||||
|
||||
try:
|
||||
sel_query = """SELECT * FROM bot"""
|
||||
cursor.execute(sel_query)
|
||||
except psycopg2.errors.UndefinedTable:
|
||||
connection.rollback()
|
||||
import problems
|
||||
sel_query = """SELECT * FROM bot"""
|
||||
cursor.execute(sel_query)
|
||||
|
||||
array = list(cursor.fetchall())
|
||||
|
||||
|
||||
bot = telebot.TeleBot('secret')
|
||||
|
||||
@bot.message_handler(commands=['start'])
|
||||
def start(message):
|
||||
sti = open('st.webp', 'rb')
|
||||
bot.send_sticker(message.chat.id, sti)
|
||||
bot.send_message(message.chat.id, "ЙОУ, {0.first_name}!\nЯ твой помощник в мире скейтбординга😎".format(message.from_user, bot.get_me()))
|
||||
|
||||
markup = types.ReplyKeyboardMarkup(resize_keyboard=True) #создание кнопок
|
||||
btn1 = types.KeyboardButton("Лучший скейтборд этого сезона")
|
||||
btn2 = types.KeyboardButton("Предложение дня")
|
||||
btn3 = types.KeyboardButton("Выбор редакции нашей компании")
|
||||
markup.add(btn1, btn2, btn3)
|
||||
bot.send_message(message.chat.id,
|
||||
'Лучший скейтборд этого сезона - это именно то, что тебе нужно, если хочешь быть самым крутым.\nПредложение дня - то, что актуально на сегодняшний день.\nВыбор редакции - просто доверься выбору наших сотрудников и тебе понравится :)\n',
|
||||
reply_markup=markup)
|
||||
|
||||
|
||||
@bot.message_handler(content_types=['text'])
|
||||
def handle_text(message):
|
||||
if (message.text.strip() == "Лучший скейтборд этого сезона"):
|
||||
i = random.choice(array)
|
||||
inf = f'Название: {i[2]}\nЦена: {i[3]}\n'
|
||||
bot.send_message(message.chat.id, inf)
|
||||
bot.send_photo(message.chat.id, open(i[4], 'rb'))
|
||||
cat = open('kotik.webm', 'rb')
|
||||
bot.send_video(message.chat.id, cat)
|
||||
elif (message.text.strip() == "Предложение дня"):
|
||||
i = random.choice(array)
|
||||
inf = f'Название: {i[2]}\nЦена: {i[3]}\n'
|
||||
bot.send_message(message.chat.id, inf)
|
||||
bot.send_photo(message.chat.id, open(i[4], 'rb'))
|
||||
cat = open('kotik.webm', 'rb')
|
||||
bot.send_video(message.chat.id, cat)
|
||||
elif (message.text.strip() == "Выбор редакции нашей компании"):
|
||||
i = random.choice(array)
|
||||
inf = f'Название: {i[2]}\nЦена: {i[3]}\n'
|
||||
bot.send_message(message.chat.id, inf)
|
||||
bot.send_photo(message.chat.id, open(i[4], 'rb'))
|
||||
cat = open('kotik.webm', 'rb')
|
||||
bot.send_video(message.chat.id, cat)
|
||||
else:
|
||||
bot.send_message(message.chat.id, "Наш бот поможет подобрать вам или близким скейтборд мечты. Скорее пробуйте! ")
|
||||
|
||||
|
||||
|
||||
bot.polling(none_stop=True, interval=0)
|
||||
@@ -1,30 +0,0 @@
|
||||
# парсер к полусему 8 неделя
|
||||
from bs4 import BeautifulSoup
|
||||
from selenium import webdriver
|
||||
from selenium.webdriver.chrome.service import Service
|
||||
from wget import download
|
||||
import psycopg2 as psyc
|
||||
|
||||
# s = Service("chromedriver") на Ubuntu можно не указывать путь до драйвера если что :)
|
||||
URL = "https://proskateshop.ru/skejtbordy/?utm_source=yandex&utm_medium=cpc&utm_campaign=cn%7Cskeyty_gz-1%7Ccid%7C51517250%7Csearch&utm_content=gid%7C4180310153%7Caid%7C8980588780%7C20506942844_20506942844%7Cmain&utm_term=%D0%9F%D0%B5%D0%BD%D0%BD%D0%B8%20%D0%B1%D0%BE%D1%80%D0%B4%20%D0%BA%D1%83%D0%BF%D0%B8%D1%82%D1%8C&etext=2202.N39xvihj0F0Od_d4etv_6nh36sdlRP-T26wHLuCJfjo_JZtVI5O7HY5f8FOJnzuLZXB6eWZoZnp2dG1laHBlcA.aceac50a24e4832d82874cd59ca1f9a315d9b351&_openstat=ZGlyZWN0LnlhbmRleC5ydTs1MTUxNzI1MDs4OTgwNTg4NzgwO3lhbmRleC5ydTpndWFyYW50ZWU&yclid=1445113833197462400"
|
||||
brow = webdriver.Chrome()
|
||||
brow.get(URL)
|
||||
|
||||
html = brow.page_source
|
||||
|
||||
soup = BeautifulSoup(html, "lxml")
|
||||
|
||||
penny = soup.find_all(attrs={"class": "product-layout product-grid col-lg-4 col-md-4 col-sm-6 col-xs-6"})
|
||||
|
||||
with psyc.connect(host = "localhost", dbname="work", user="dialuna", password = "Timka07") as conn:
|
||||
with conn.cursor() as cursor:
|
||||
for i, product in enumerate(penny[1:]):
|
||||
image_link = product.find("img").attrs.get("src")
|
||||
image_name = product.find("img").attrs.get("alt")
|
||||
price = product.find("p", attrs={"class": "price"}).text.strip()
|
||||
download( product.find("img").attrs.get("src"), f"images/{i}.jpg")
|
||||
|
||||
cursor.execute(f"""insert into bot(link, name, price, file)
|
||||
values ('{image_link}', '{image_name}', '{price}', 'images/{i}.jpg')""")
|
||||
|
||||
conn.commit()
|
||||
@@ -1,90 +0,0 @@
|
||||
import telebot
|
||||
import psycopg2
|
||||
from telebot import types
|
||||
import random
|
||||
|
||||
connection = psycopg2.connect(host='localhost', dbname='work', user='dialuna', password='Timka07') # да-да :D
|
||||
cursor = connection.cursor()
|
||||
|
||||
try:
|
||||
sel_query = """SELECT * FROM bot"""
|
||||
cursor.execute(sel_query)
|
||||
except psycopg2.errors.UndefinedTable:
|
||||
connection.rollback()
|
||||
import problems
|
||||
sel_query = """SELECT * FROM bot"""
|
||||
cursor.execute(sel_query)
|
||||
|
||||
array = list(cursor.fetchall())
|
||||
|
||||
def select(ID):
|
||||
s_query = f'''SELECT * FROM bot where ID = {ID}'''
|
||||
cursor.execute(s_query)
|
||||
return cursor.fetchone()
|
||||
|
||||
|
||||
|
||||
|
||||
bot = telebot.TeleBot('secret')
|
||||
|
||||
@bot.message_handler(commands=['start'])
|
||||
def start(message):
|
||||
sti = open('st.webp', 'rb')
|
||||
bot.send_sticker(message.chat.id, sti)
|
||||
bot.send_message(message.chat.id, "ЙОУ, {0.first_name}!\nЯ твой помощник в мире скейтбординга😎".format(message.from_user, bot.get_me()))
|
||||
|
||||
markup = types.ReplyKeyboardMarkup(resize_keyboard=True) #создание кнопок
|
||||
btn1 = types.KeyboardButton("Лучший скейтборд этого сезона")
|
||||
btn2 = types.KeyboardButton("Предложение дня")
|
||||
btn3 = types.KeyboardButton("Выбор скейта по ID")
|
||||
markup.add(btn1, btn2, btn3)
|
||||
bot.send_message(message.chat.id,
|
||||
'Лучший скейтборд этого сезона - это именно то, что тебе нужно, если хочешь быть самым крутым.\nПредложение дня - то, что актуально на сегодняшний день.\nВыбор скейта по ID - просто доверься выбору наших сотрудников и тебе понравится :)\n',
|
||||
reply_markup=markup)
|
||||
|
||||
|
||||
@bot.message_handler(content_types=['text'])
|
||||
def handle_text(message):
|
||||
if (message.text.strip() == "Лучший скейтборд этого сезона"):
|
||||
i = random.choice(array)
|
||||
inf = f'Название: {i[2]}\nЦена: {i[3]}\n'
|
||||
bot.send_message(message.chat.id, inf)
|
||||
bot.send_photo(message.chat.id, open(i[4], 'rb'))
|
||||
cat = open('kotik.webm', 'rb')
|
||||
bot.send_video(message.chat.id, cat)
|
||||
elif (message.text.strip() == "Предложение дня"):
|
||||
i = random.choice(array)
|
||||
inf = f'Название: {i[2]}\nЦена: {i[3]}\n'
|
||||
bot.send_message(message.chat.id, inf)
|
||||
bot.send_photo(message.chat.id, open(i[4], 'rb'))
|
||||
cat = open('kotik.webm', 'rb')
|
||||
bot.send_video(message.chat.id, cat)
|
||||
elif (message.text.strip() == "Выбор скейта по ID"):
|
||||
sent = bot.send_message(message.chat.id,
|
||||
f'Введите идентификатор(ID, целое число) от 1 до 13, чтобы получить информацию о конкретном предложении: ')
|
||||
bot.register_next_step_handler(sent, ret_id)
|
||||
else:
|
||||
bot.send_message(message.chat.id, "Наш бот поможет подобрать вам или близким скейтборд мечты. Скорее пробуйте! ")
|
||||
|
||||
def ret_id(message):
|
||||
try:
|
||||
now_id = (message.text)
|
||||
now_id = int(float(now_id))
|
||||
z = list(select(now_id))
|
||||
a2 = f'Название: {z[2]};\nЦена: {z[3]};\n'
|
||||
bot.send_message(message.chat.id, a2)
|
||||
bot.send_photo(message.chat.id, open(z[4], 'rb'))
|
||||
bot.send_message(message.chat.id, "Для повторного поиска по ID воспользуйтесь соответствующей кнопкой в 'меню'")
|
||||
except ValueError:
|
||||
bot.send_message(message.chat.id,
|
||||
"По такому ID нет данных. Попробуйте заново через 'меню' кнопок найти интересующее вас предложение")
|
||||
|
||||
|
||||
|
||||
bot.polling(none_stop=True, interval=0)
|
||||
|
||||
cursor.close()
|
||||
connection.close()
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user