Всем привет.
Подскажите плз, где косяк?
Бот выбирает из таблицы случайную игру и выводит пользователю ее название и список тегов.
Игру выводит, но словарь пустой ничего по тегам не выводит
Подскажите плз, где косяк?
Бот выбирает из таблицы случайную игру и выводит пользователю ее название и список тегов.
Игру выводит, но словарь пустой ничего по тегам не выводит

Python:
import re
import random
from bs4 import BeautifulSoup
import requests
import telebot
token = '1928797726:AAHN9nKEMu8RP7fDWKXuWDVpPlfRElxDBac'
games_type = [] # создаём список игр
games_book = {} # создаём словарь с тэгами
bot = telebot.TeleBot(token)
def find_game():
link = 'https://store.steampowered.com/genre/Free%20to%20Play/'
data_link = requests.get(link).text
sp_link = BeautifulSoup(data_link, 'html.parser')
games_link = sp_link.find_all('div', class_='tab_item_content') # поиск тега DIV
global games_type, games_book
for game_true in games_link:
games = game_true.find('div', class_='tab_item_name').text # название игры
games_type.append(games)
games_views = game_true.find_all('span', class_='top_tag')
tags = []
for i in range(len(games_views)):
tag_game = games_views[i].text.strip(', ')
tags.append(tag_game)
games_book[games] = tags
@bot.message_handler(commands=['start'])
def inception (message):
bot.reply_to(message, 'Добро пожаловать! Напиши "игра" и мы подберём во что поиграть!')
@bot.message_handler(content_types=['text'])
def play_a_game(message):
game_of_choice = re.findall('[И-и]гра+', message.text)
if len(game_of_choice) != 0:
find_game()
random_games = random.randint(0, len(games_type) -1)
random_game = games_type[random_games]
bot.send_message(message.chat.id, 'Играем в {}, '.format(random_game) +
'жанр: '.format(games_book[random_game]))
bot.infinity_polling()
Последнее редактирование: