mitshel / sopds

Simple opds catalog
http://www.sopds.ru/
Other
210 stars 79 forks source link

TelegramDeprecationWarning #63

Open bravo321 opened 3 years ago

bravo321 commented 3 years ago

Я так понимаю в телеграм боте API поменялось, он больше не запускается (version = '12.8') ,сыплет ошибками TelegramDeprecationWarning Quit the sopds_telebot with CONTROL-C. /opt/sopds/opds_catalog/management/commands/sopds_telebot.py:348: TelegramDeprecationWarning: R> download_handler = RegexHandler('^/download\d+$',self.downloadBooks) /home/bravo123/.local/lib/python3.8/site-packages/telegram/ext/regexhandler.py:113: TelegramDep> super().__init__(Filters.regex(pattern), /home/bravo123/.local/lib/python3.8/site-packages/telegram/ext/regexhandler.py:113: TelegramDep> super().__init__(Filters.regex(pattern), /home/bravo123/.local/lib/python3.8/site-packages/telegram/ext/regexhandler.py:113: TelegramDep> super().__init__(Filters.regex(pattern), 2020-09-14 09:58:18,390 ERROR Error while getting Updates: Conflict: terminated by other get> 2020-09-14 09:58:18,391 ERROR No error handlers are registered, logging exception. Traceback (most recent call last): File "/home/bravo123/.local/lib/python3.8/site-packages/telegram/ext/updater.py", line 379, i> if not action_cb(): File "/home/bravo123/.local/lib/python3.8/site-packages/telegram/ext/updater.py", line 337, i> updates = self.bot.get_updates(self.last_update_id, File "<decorator-gen-31>", line 2, in get_updates File "/home/bravo123/.local/lib/python3.8/site-packages/telegram/bot.py", line 67, in decorat> result = func(*args, **kwargs) File "/home/bravo123/.local/lib/python3.8/site-packages/telegram/bot.py", line 2138, in get_u> result = self._request.post(url, data, timeout=float(read_latency) + float(timeout)) File "/home/bravo123/.local/lib/python3.8/site-packages/telegram/utils/request.py", line 330,> result = self._request_wrapper('POST', url, File "/home/bravo123/.local/lib/python3.8/site-packages/telegram/utils/request.py", line 248,> raise Conflict(message) telegram.error.Conflict: Conflict: terminated by other getUpdates request; make sure that only > 2020-09-14 09:58:24,022 ERROR Error while getting Updates: Conflict: terminated by other get> 2020-09-14 09:58:24,023 ERROR No error handlers are registered, logging exception. Traceback (most recent call last): File "/home/bravo123/.local/lib/python3.8/site-packages/telegram/ext/updater.py", line 379, i> if not action_cb(): File "/home/bravo123/.local/lib/python3.8/site-packages/telegram/ext/updater.py", line 337, i> updates = self.bot.get_updates(self.last_update_id, File "<decorator-gen-31>", line 2, in get_updates File "/home/bravo123/.local/lib/python3.8/site-packages/telegram/bot.py", line 67, in decorat> result = func(*args, **kwargs) .......

Van-Hellsing commented 3 years ago

requirements.txt python-telegram-bot>=10,<12

bravo321 commented 3 years ago

Ну так, а я о чём? API обновилось, и где я теперь старое возьму?

Van-Hellsing commented 3 years ago

Измени строчку в requirements.txt и обнови зависимости - python3 -m pip install -r requirements.txt

bravo321 commented 3 years ago

Ну что-то поменялось, теперь ругается по другому:

Quit the sopds_telebot with CONTROL-C.
Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/bravo123/.local/lib/python3.8/site-packages/django/core/management/__init__.py", line 381, in execute_from_command_line
    utility.execute()
  File "/home/bravo123/.local/lib/python3.8/site-packages/django/core/management/__init__.py", line 375, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/bravo123/.local/lib/python3.8/site-packages/django/core/management/base.py", line 316, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/home/bravo123/.local/lib/python3.8/site-packages/django/core/management/base.py", line 353, in execute
    output = self.handle(*args, **options)
  File "/opt/sopds/opds_catalog/management/commands/sopds_telebot.py", line 98, in handle
    self.start()
  File "/opt/sopds/opds_catalog/management/commands/sopds_telebot.py", line 345, in start
    updater = Updater(token=config.SOPDS_TELEBOT_API_TOKEN , use_context=True)
TypeError: __init__() got an unexpected keyword argument 'use_context'
bravo321 commented 3 years ago

ну и да в таком варианте установилась версия
Successfully installed future-0.18.2 python-telegram-bot-11.1.0 я так понимаю, нужно таки устанавливать именно =10?

Van-Hellsing commented 3 years ago

Запятую пропустил, нужно вот так - python-telegram-bot>=10,<12 10 не устанавливал, 11.1 работает без ошибок.

bravo321 commented 3 years ago

Да, нет с запятой всё нормально, поставил, я же сказал что установилась 11 версия. Теперь просто выдает ошибку:

TypeError: __init__() got an unexpected keyword argument 'use_context'

Убрал вообще нафиг use_context=True, вроде что-то заработало ...

PeterVoronov commented 3 years ago

Доброго времени суток. Кстати можете посмотреть мои пулл-реквесты. У меня с ними работает.

bravo321 commented 3 years ago

с ними работает 12 версия? P.S. Проверил с 12 работает, правда всё равно предупреждаеет: TelegramDeprecationWarning: Old Handler API is deprecated - see https://git.io/fxJuV for details а с последней 13 уже нет, не стал копаться, оставил 12-ю.

HalfWorm commented 3 years ago

С 12 версией бота у меня не происходит скачивание файлов. Поиск работает а качать не качает. Оставил на 10 версии

PeterVoronov commented 3 years ago

С 12 версией бота у меня не происходит скачивание файлов. Поиск работает а качать не качает. Оставил на 10 версии

Надо очередность поменять, вначал проверку на скачивание, а потом на формирование ответа, посмотрите мой ПР