Автор Тема: bot.polling  (Прочитано 3116 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн philips2009

bot.polling
« : 03 Февраля 2020, 19:32:23 »
Доброго времени суток уважаемые форумчане

Создал телеграмм-бота используя библиотеку pytelegrambotapi. Бот работает но есть проблема, после минут 5-10 простоя (то есть если не используется) то бот падает.
Пробовал так:
bot.polling(none_stop=True)

и так:
try:
    bot.polling(none_stop=True)
except:
    time.sleep(5)

Думаю что с моей ОС какие-то проблемы потому-что попробовал тот же бот на пк с Linux Lite, там работает без нареканий, оставил, для интереса на продолжительное время - проработал около 3-х суток. Помогите или дайте наводку где копать и пожалуйста с более менее простыми словами, поскольку являюсь начинающим.
Заранее спасибо.

ОС
uname -a
Linux debian 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3+deb9u2 (2019-11-11) x86_64 GNU/Linux

lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 9.11 (stretch)
Release: 9.11
Codename: stretch


 

Оффлайн ogost

Re: bot.polling
« Ответ #1 : 04 Февраля 2020, 07:34:36 »
версии питона проверьте, и установленные библиотеки.

Оффлайн ogost

Re: bot.polling
« Ответ #2 : 04 Февраля 2020, 07:37:12 »
логгирование настройте и в try except запись ошибки вместо sleep сделайте.
телеграм ботом сам не пользовался, поэтому и советы из раздела "пальцем в небо".

Оффлайн philips2009

Re: bot.polling
« Ответ #3 : 05 Февраля 2020, 13:55:30 »
версии питона проверьте, и установленные библиотеки.

На Linux Lite
python - 3.5.2
pytelegrambotapi - 3.6.7

На Debian
python 3.5.3
pytelegrambotapi - 3.6.7
 

Оффлайн philips2009

Re: bot.polling
« Ответ #4 : 05 Февраля 2020, 13:57:47 »
логгирование настройте и в try except ...

Всегда эта ошибка
('Connection aborted', ConnectionResetError(104, 'Connection reset by peer'))
 

Оффлайн Olej

Re: bot.polling
« Ответ #5 : 05 Февраля 2020, 14:04:09 »
Думаю что с моей ОС какие-то проблемы
Так думают все начинающие  :D
Вам же сказали с чего начинать?!:
в try except запись ошибки вместо sleep сделайте.
try:
    bot.polling(none_stop=True)
except Exception as err:
    print( "вот где я начудил: " + str( err ) )
 

Оффлайн philips2009

Re: bot.polling
« Ответ #6 : 05 Февраля 2020, 14:21:25 »
Вам же сказали с чего начинать?!:

Это и сделал и то что выводиться уже писал
('Connection aborted', ConnectionResetError(104, 'Connection reset by peer'))
 

Оффлайн ogost

Re: bot.polling
« Ответ #7 : 05 Февраля 2020, 18:30:48 »
логгирование настройте и в try except ...

Всегда эта ошибка
('Connection aborted', ConnectionResetError(104, 'Connection reset by peer'))
Похоже, что сервер просто не принимает ваши запросы.
Опять же из серии "пальцем в небо":
1. Проверьте доступность телеграмма, может с блокировками что-то связанное, или с маршрутами.
2. Или может ваш айпишник в блеклисте у телеграма
3. Если используется шифрование - проверить валидность всяких сертификатов, версии используемой библиотеки и прочего.
Разумеется, первые два вопроса отпадают, если проблемный хост и хост с Linux Lite подключены к одному каналу.

Оффлайн philips2009

Re: bot.polling
« Ответ #8 : 05 Февраля 2020, 20:29:33 »
Похоже, что сервер просто не принимает ваши запросы. ....

По первому вопросу
Здесь не понял, какими блокировками имеете ввиду

По второму
Я думаю если бы мой IP был в блэклисте телеграмма, тогда бы вообще не работал бот

По третьему
Шифрование не используется

проблемный хост и хост с Linux Lite:
у обеих разные IP, на счет канала не знаю
 

Оффлайн ogost

Re: bot.polling
« Ответ #9 : 06 Февраля 2020, 08:04:17 »
Здесь не понял, какими блокировками имеете ввиду
В России роскомнадзор воюет же с телегой, не? Эти блокировки и имел ввиду.
у обеих разные IP, на счет канала не знаю
Под одним каналом я подразумевал одного и того же провайдера.
Есть ли возможность поменять IP проблемного хоста на IP беспроблемного? Это чтобы исключить возможные проблемы со стороны сети.
На этом идеи заканчиваются, прошу прощения.

Теги: