@botoid

Страница 903 из 4042
b0g3r
11.06.2017
07:19:05
А почему вебхук установлен по урл+ токен, а черри ловит индекс (просто урл)?

b0g3r
11.06.2017
07:19:57
Ну а как по твоему?

Телеграм посылает на урл/токен, а черрипай слушает урл

Google
pride
11.06.2017
07:21:25
cherrypy.quickstart(WebhookServer(), WEBHOOK_URL_PATH, {'/': {}}) тут явно не хватает токена

а, хотя WEBHOOK_URL_PATH внутри ж токен

b0g3r
11.06.2017
07:23:30
А, тогда беру слова обратно

Alex
11.06.2017
07:24:00
умничка. быстро отозвал токен :D (почти)

Benyomin
11.06.2017
07:24:34
умничка. быстро отозвал токен :D (почти)
крипово было не заебался переписывать? =)

Alex
11.06.2017
07:24:46
Benyomin
11.06.2017
07:24:52
)) спасибо

pride
11.06.2017
07:25:24
лол, успел набить вручную?)

Alex
11.06.2017
07:25:32
лол, успел набить вручную?)
да что там его набирать

45 символов всего

b0g3r
11.06.2017
07:26:53
Надо логировать, хотя бы принтами

И кода make response нема

Benyomin
11.06.2017
07:27:13
Надо логировать, хотя бы принтами
ставил принты в хэндлере, тишина

Google
Alex
11.06.2017
07:27:14
а еще лучше функционалом модуля logging

b0g3r
11.06.2017
07:27:34
ставил принты в хэндлере, тишина
Ну так пробивай выше пока не найдешь куда не идет

pride
11.06.2017
07:28:13
func=lambda message: True, content_types=['text']

в мануале

)

b0g3r
11.06.2017
07:29:20
А может и правда ?

Да, похоже на правду

pride
11.06.2017
07:31:34
:D

ставил принты в хэндлере, тишина
вырежи свой хэндлер и пхни из мануала

или в свой лямбду сунь

Евгений
11.06.2017
08:30:22
Господа, вопрос такой: есть бот на питоне, который будет периодически выбирать один элемент из большого (~3k-10k элементов) массива. Каждый элемент массива - строка в ~30 символов. Вопрос: что эффективнее - загнать все эти данные в БД или подключить «массив» как объект в один из .py-файлов, загрузив его в память и дёргая оттуда элементы?

Евгений
11.06.2017
08:35:34
Спасибо

Froth
11.06.2017
08:36:05
Alex
11.06.2017
08:36:56
но тут же возникаает вопрос скорости работы питона с большими объемами данных в памяти

Alex
11.06.2017
08:38:33
а, хотя строка в ~30 символов.. может и справится

ибо с словарями/списками не справляется

b0g3r
11.06.2017
08:38:59
2 мегабайта Большие данные

Google
b0g3r
11.06.2017
08:39:12
Что значит "не справляется"?)

Alex
11.06.2017
08:39:16
2 мегабайта Большие данные
ну вот дочитал дальше

Rinat
11.06.2017
09:26:21
pyTelegramBotAPI. Кто сталкивался с такой проблемой: при отправке запроса к апи телеграма возникает requests.exceptions.ReadTimeout: HTTPSConnectionPool(host='api.telegram.org', port=443): Read timed out. (read timeout=3.5) Т.е. апи телеграма ничего не отправляет при том, что соединение установлено (иначе был бы ConnectTimeout и при connection_timeout=3 read_timeout=99999 не висел бы в ожидании ответа). А при коннекте к бд — ConnectionTimeout

pride
11.06.2017
09:29:54
с каналом проблемы

у меня постоянно боты валятся

pride
11.06.2017
09:30:54
о, тупой вопрос: на хосте траблы с инетом, и бот часто падает я сделал так: def handle_ctrl_c(signal, frame): teardown_network() sys.exit(130) и так: if __name__ == "__main__": while True: signal.signal(signal.SIGINT, handle_ctrl_c) try: tb.polling(none_stop=True) except requests.exceptions.ReadTimeout: time.sleep(15) если не использую синал, бот не реагирует на CTRL+C можно без сигналов обойтись, с работающим брейком?

Rinat
11.06.2017
09:31:01
pyTelegramBotAPI?
ссори, да

pride
11.06.2017
09:31:02
и обернул бы в трай: if __name__ == '__main__': try: while True: try: tb.polling(...) except ...ReadTimeout: sleep(...) except KeyboardInterrupt: teardown_network() sys.exit(130)

так не падает

и 1 и 2 решения работают

нагромождено чтобы ctrl+c работало

Rinat
11.06.2017
09:31:35
с каналом проблемы
а как решаете?

pride
11.06.2017
09:31:39
вышееее

Евгений
11.06.2017
09:31:55
ссори, да
https://github.com/eternnoir/pyTelegramBotAPI/issues/251#issuecomment-278531560

pride
11.06.2017
09:32:28
у меня он так на брейк не реагирует

поэтому два трая или сигналы

Rinat
11.06.2017
09:35:40
https://github.com/eternnoir/pyTelegramBotAPI/issues/251#issuecomment-278531560
так все-таки апи телеги не отвечает?

pride
11.06.2017
09:36:20
так все-таки апи телеги не отвечает?
у меня две площадки, в разных городах

на одной бот падает 2-10 раз в день с этой ошибкой

Google
Евгений
11.06.2017
09:36:34
так все-таки апи телеги не отвечает?
Возникает timeout у библиотеки requests.

pride
11.06.2017
09:36:40
на одной висит неделями

pride
11.06.2017
09:36:53
да

Rinat
11.06.2017
09:37:37
Возникает timeout у библиотеки requests.
а какой лучше таймаут ставить?

pride
11.06.2017
09:37:45
Решение выше
стопе, ты меня в моё же решение пхнул?)

Rinat
11.06.2017
09:38:10
стопе, ты меня в моё же решение пхнул?)
https://github.com/eternnoir/pyTelegramBotAPI/issues/251#issuecomment-278531560 про вот это , наверно он

pride
11.06.2017
09:38:15
а какой лучше таймаут ставить?
если в трай обернешь пофиг, оставь дефолт

я написал, что у меня решена проблема с брейком скрипта

Евгений
11.06.2017
09:38:59
ну посмотри на форварды мои и этот код
т.е. решение от Eternnoir не работает?

pride
11.06.2017
09:39:08
в решение по ссылке он тупо не ловит ctrl+c

т.е. тебе придется убивать процесс вручную по pid

потому что решение по ссылке обработает все исключения

включая CTRL-C сигнал

бля

Sergey❄️
11.06.2017
09:39:50
Обернуть поллинг в трай, никогда бы не додумался

pride
11.06.2017
09:39:51
я как попугай тут

Alex
11.06.2017
09:39:59
kill -9 <PID>

pride
11.06.2017
09:40:01
пятый раз одно и то же пишу

Google
pride
11.06.2017
09:40:12
можно и сервер ребутнуть

только нахуя

Alex
11.06.2017
09:40:48
вообще

pride
11.06.2017
09:41:02
вообще да, но лучше сделать правильно)

Alex
11.06.2017
09:41:19
самым простым и очевидным решением проблем с лонгполингом есть вебхук

pride
11.06.2017
09:43:24
авотхуй)

ща узнаю у коллеги, но вроде на площадке где падает канал - он не спас

Rinat
11.06.2017
09:44:28
webhook для меня это механизм оповещения событий

Евгений
11.06.2017
09:54:03
Господа, а как вы справляетесь с "некорректными" для БД именами людей в телеге? Например, у которых "пустые символы" или просто не буквы?

b0g3r
11.06.2017
09:54:32
А почему оно некорректно в бд?

Ютф8 же

Евгений
11.06.2017
09:55:04
json_encode()
А причём тут json?

А почему оно некорректно в бд?
Ну, например, если я хочу заменить имена таких "альтернативно-одарённых" пользователей на что-нибудь, типа "noname"

b0g3r
11.06.2017
09:55:53
Нет, я не очень понял что значит "некорректно в бд"

Chuvi
11.06.2017
09:55:53
А причём тут json?
При том что в базу тогда ложатся закодированные в ASCII значения для любого utf символа - нет невалидных символов.

b0g3r
11.06.2017
09:56:44
Ну, например, если я хочу заменить имена таких "альтернативно-одарённых" пользователей на что-нибудь, типа "noname"
Ну тут тебе нужно сначала определиться что ты считаешь альтернативно-одаренными

Евгений
11.06.2017
09:56:47


b0g3r
11.06.2017
09:57:37
Нормальные люди - в ASCII?

pride
11.06.2017
09:57:47
Ну тут тебе нужно сначала определиться что ты считаешь альтернативно-одаренными
emoji_pattern = re.compile("[" u"\U0001F600-\U0001F64F" # emoticons u"\U0001F300-\U0001F5FF" # symbols & pictographs u"\U0001F680-\U0001F6FF" # transport & map symbols u"\U0001F1E0-\U0001F1FF" # flags (iOS) "]+", flags=re.UNICODE) text = (emoji_pattern.sub(r'', text)) я так чистил от говна

Страница 903 из 4042