@botoid

Страница 1511 из 4042
F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:16:40
if __name__ == '__main__': while True: try: bot.polling(none_stop = True) bot.send_message(reports_chat_id,('I`m alive. Time = ' + time.ctime())) except Exception as e: logging.exception(e) time.sleep(5) bot.send_message(reports_chat_id,e)

как то можно многострочно форматировать?

b0g3r
19.09.2017
19:16:57
тремя бэктиками с двух сторон

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:17:09
черт

Google
F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:17:29


b0g3r
19.09.2017
19:18:13
убери send_message logging.exception(e) исправь на logging.exception('polling error')

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:18:42
все send_message убрать?

b0g3r
19.09.2017
19:18:51
нет, только этот

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:19:30
if __name__ == '__main__': while True: try: bot.polling(none_stop = True) except Exception as e: logging.exception('polling error') time.sleep(5) bot.send_message(reports_chat_id,e)

b0g3r
19.09.2017
19:19:50
второй убери, превый можешь оставить

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:20:27
if __name__ == '__main__': while True: try: bot.polling(none_stop = True) except Exception as e: logging.exception('polling error') time.sleep(5) проще оба убрать

b0g3r
19.09.2017
19:20:40
у тебя падает инет, внутри блока try вылетает эксепшн, заходит в except-блок, логинит ошибку, делает слип и пытается оптравить сообщение. вылетает второй эксепшн, который уже некому ловить

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:21:10
окей, хорошо

(не понимаю, как может падать инет, если я только что смотрел видос на ютубе)

b0g3r
19.09.2017
19:22:18
роутер решил взбунтоваться и десяток пакетов пропустил

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:23:09
хорошо, тогда другой вопрос как мне на VPS постоянно держать запущенным .py скрипт? по идее я же запускаю его через ssh, так что он автоматически через какое то время закрывает тоннель и скрипт

Google
Проксимов
19.09.2017
19:23:21
Уже

Было

Сделайте faq, ну

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:24:27
http://python.su/forum/topic/22350/ сие чудо?

Rubikoid
19.09.2017
19:25:37
screen
или supervisor)

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:26:22


Rubikoid
19.09.2017
19:27:11
apt-get install screen или apt-get install supervisor

и не сиди от рута

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:27:22
в моем случае yum)

чо так

Rubikoid
19.09.2017
19:28:05
F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:28:37
F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:28:51
Rubikoid
19.09.2017
19:29:09
F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:29:16
Это криво)
в каком плане?

Rubikoid
19.09.2017
19:29:26
в прямом.

Mad
19.09.2017
19:29:27
потому что screen можно закрыть нечаянно, например

переключишься в процесс и нажмёшь ^Cили чё-нить в этом роде

Google
Mad
19.09.2017
19:29:46
а супервизор специально сделан для запуска фоновых процессов

Rubikoid
19.09.2017
19:30:24
https://nick.groenen.me/posts/2014/01/20/screen-is-not-a-process-control-system/

systemd
супервизор дает более упрощенный и быстрый способ добавления новых программ, вроде.

Mad
19.09.2017
19:31:33
systemd
Мне его учить лень -)

Да скорее всего одинаково.

Что там, что там ты подключаешь конфиг файл с опиисанием демона

Rubikoid
19.09.2017
19:33:03
хм...

Alex
19.09.2017
19:33:09
Да скорее всего одинаково.
если не вдаваться в детали, то отличается синтаксисом конфига

Mad
19.09.2017
19:33:10
у супервизор есть фишка - веб-интерфейс, но я её не юзаю

Alex
19.09.2017
19:33:22
это если совсем не вдаватся в детали

Rubikoid
19.09.2017
19:34:28
если не вдаваться в детали, то отличается синтаксисом конфига
Могу предположить, что systemd будет чуть быстрее/стабильнее, чем супервизор, в каких-то глючных ситуациях, например

Mad
19.09.2017
19:35:13
В твоём утверждении содержится 0 информации :)

Rubikoid
19.09.2017
19:51:51
ты всё еще на LP?

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
19:52:15
да

Rubikoid
19.09.2017
19:52:26
хм...

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
20:36:21
я могу сразу 2 сделать конструкцию вида try except exception1 except exception2 ?

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
20:39:45
except (exc1, exc2):
а если мне надо разные действия для этих ошибок?

Google
Artemiy
19.09.2017
20:40:45
Тогда да. try: ... except exc1: ... except exc2: ...

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
20:40:59
спасибо

stonepig
19.09.2017
20:41:46
йоу как сделать так, чтобы бот реагировал на сообщения только одной супер-группы, а в других (если его добавят куда-то), то не реагировал? либа pytelegrambotapi

Artemiy
19.09.2017
20:42:33
спасибо
Ещё полезна конструкция finally: как the last resort.

stonepig
19.09.2017
20:43:05
b0g3r
19.09.2017
20:43:11
где именно?
где хочешь

Admin
ERROR: S client not available

stonepig
19.09.2017
20:43:18
та вот в том то и дело, что не пашет

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
20:43:19
где именно?
прямо под хэндлером сообщения

stonepig
19.09.2017
20:43:20
ща покажу, как делал

b0g3r
19.09.2017
20:43:21
в telebot'e можно в func = ...

b0g3r
19.09.2017
20:43:32
показывай

stonepig
19.09.2017
20:43:39
а, ок

ща

а если айдишников несколько, то он через if _ in _ переберет айдишники?

Artemiy
19.09.2017
20:44:28
На pastebin лучше заливай логи.

Google
F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
20:44:37
b0g3r
19.09.2017
20:44:42
ты код покажи, потом поговорим

Sergey❄️
19.09.2017
20:45:01
Где-то в коде зациклил значит

Artemiy
19.09.2017
20:46:24
Да, лучше сет.

Сорри.

Sergey❄️
19.09.2017
20:47:03
Чем лучше?

F̦̮̦͍́ o̹̟̩r̨̮͈ ̘͕̥͓d̙͓̀ ̖̱̟en͖͍̼̘̺̣̘
19.09.2017
20:47:07
ты код покажи, потом поговорим
if __name__ == '__main__': while True: try: bot.polling(none_stop = True) except KeyboardInterrupt as ki: logging.exception('killed by user') bot.send_message(reports_chat_id,'killed by user') except Exception as e: logging.exception('polling error') time.sleep(5)

b0g3r
19.09.2017
20:47:43
none_stop=True убери тогда

Чем лучше?
быстрее

Marlik
19.09.2017
20:48:06
systemd
+ удобно.

b0g3r
19.09.2017
20:49:32
Чем лучше?
поиск по хэшу (а сет - это хэши) очень быстрый

он "достает" значение, а не перебирает и сравнивает каждое

но сет инициализируется сильно прожорливее

stonepig
19.09.2017
20:53:36
получилось залочить бота, но заебался в каждом хендлере проверку ставить

b0g3r
19.09.2017
20:53:51
вынес бы в функцию проверку

lambda - та же функция, незачем её 10 раз писать

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