def parser():
url = 'https://stopgame.ru/news'
HOST = 'https://stopgame.ru'
page = requests.get(url)
soup = BeautifulSoup(page.text, 'lxml')
TITLE = soup.title.string
print(TITLE)
ss = soup.find_all('div', class_='item article-summary article-summary-card')
news = []
for s in ss:
news.append({'title': s.find('div', class_='caption caption-bold').get_text(strip=True),
'link': HOST + str(s.find('a').get('href'))})
print(f'Загружено {len(news)} статей с новостями в файл')
pretty_news = ''
for content in news:
pretty_news += '{}\n{}\n\n'.format(contnet['title'], contnet['link'])
return pretty_news
def wrap_up_in_file(window,file_input):
wbf = Workbook()
ws = wbf.active
all_items = {}
try:
list_items = get_list_data_panda(file_input)
articul = ''
for i,item in enumerate(list_items):
count_item = 0
window['out'].Update(value=f'{i}/{len(list_items)}')
for j,item_j in enumerate(list_items):
if item['idnp'] == item_j['idnp'] and item['brand'] == item_j['brand'] and item['price'] == item_j['price']: # проверка если найденные записи совпадают
count_item += 1 # счетчик кол-во записей
if count_item != 0:
if articul != item['idnp']: # Эта проверка нужна чтоб не было дубликатов в файле
if item['idnp'] in all_items:
all_items[item['idnp']]['total'] += 1
else:
all_items[item['idnp']] = {'title': item['title'], 'brand': item['brand'], 'count_item': count_item, 'price': item['price'], 'total': 0}
articul = item['idnp']
for idnp, value in all_items.items():
ws.append([idnp,value['title'],value['brand'],value['count_item'],value['price'],value['total']])
window['out'].Update(value='Файл сохраняется. Ждите')
wbf.save(filename=f"{file_input}-result.xlsx")
window['out'].Update(value='Загрузка завершена')
except Exception as e:
window['out'].Update(value='Произошла ошибка, смотрите логи')
with open('log.info','a') as file_log:
file_log.write(f'Error with file: {e.args}')
import time
print("Запустить таймер?")
a = input(">>> ")
seconds = 0
minutes = 0
hours = 0
print(seconds)
def timer(seconds, minutes, hours):
if a == "да":
time.sleep(1)
if seconds == 60:
if minutes == 60:
hours = hours + 1
print(hours + ": " + minutes + ": " + seconds)
timer()
else:
minutes = minutes + 1
print(hours + ": " + minutes + ": " + seconds)
timer()
else:
seconds = seconds + 1
print(hours + ": " + minutes + ": " + seconds)
timer()
timer(seconds, minutes, hours)
elif response in rar: #0
elif [word for word in response.split() if word.lower() in rar]:
elif any(word in rar for word in response.lower().split()):
elif any(word in response.lower() for word in rar):
rar = ["мат", "мат2", "мат3"]
bot.send_message(message.chat.id, "Добро пожаловать, {0.first_name}!\nЯ - {1.first_name}, бот который даст вам ссылки на соц-сети.".format(message.from_user, bot.get_me()),
parse_mode='html', reply_markup=markup)
@bot.message_handler(commands=['start'])
def start_message(message):
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
item1 = types.KeyboardButton("Ссылка на наш Вк")
item2 = types.KeyboardButton("Ссылка на наш Инстаграмм")
item3 = types.KeyboardButton("Ссылка на наш Ютуб")
item4 = types.KeyboardButton("Ссылка на наш Телеграмм")
markup.add(item1, item2, item3, item4)
bot.send_message(message.chat.id, "Добро пожаловать, {}!\nЯ - {}, бот который даст вам ссылки на соц-сети.".format(message.from_user, bot.get_me()), reply_markup=markup)