Я пытаюсь скомпилировать код python и запустить его как бот телеграммы.
Когда я запускаю его в VS Code или в консоли CMD (python main.py), он зависает.
Однако, когда я разбивал код по отдельности и запускал, он работал хорошо.
1) Может ли PyGod указать, где я делаю не так?
2) Я понял, что это происходит, когда я пытаюсь повторно развернуть бота Telegram. У кого-нибудь есть идеи по этому поводу?
from telegram.ext import Updater, InlineQueryHandler, CommandHandler
from telegram.ext.dispatcher import run_async
import requests
import re
def get_url():
contents = requests.get('https://dog.ceo/api/breed/retriever/golden/images/random').json()
url = contents['message']
return url
def get_image_url():
allowed_extension = ['jpg','jpeg','png']
file_extension = ''
while file_extension not in allowed_extension:
url = get_url()
file_extension = re.search("([^.]*)$",url).group(1).lower()
return url
@run_async
def goodboy(update, context):
url = get_image_url()
chat_id = update.message.chat_id
context.bot.send_photo(chat_id=chat_id, photo=url)
def main():
updater = Updater('YOUR_TOKEN', use_context=True)
dp = updater.dispatcher
dp.add_handler(CommandHandler('goodboy',goodboy))
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()