Лентюй, цифру 1% (впрочем, вроде бы говорят о 4%) тоже надо уметь правильно интерпретировать. В большинстве случаев в суд идут после предварительного следствия, которое уже изучило все обстоятельства дела, так что если дело зашло в тупик, то и в суд не подадут. Разумеется, проблему излишнего доверия суду к позиции гособвинения это не отменяет, но всё же.
JeffyJeff, к тому, что если ты получил судимость полгода назад, то ты вряд ли убедишь хоть одного работодателя, что теперь уж точно всё и не повторится. Поэтому в таких условиях можно расчитывать только на неответственную не очень приличную по заработкам работу. Вот если прошло лет 15-20, в течение которых ничего подобного не повторялось - то это уже не полгода, а полжизни - тут уже чисто теоретически можно рассматривать ситуацию как отличающуюся. Поэтому и спрашивают подробностей.
Эрик Коптилеу, если идти по пути легального API и не нарушать (не рекламить, не продавать лекарства и алкоголь и тем более наркотики, а также если компания не попадёт под санкции США), то не заблокируют. Основные проблемы тут - это цена и сложность подключения.
С точки зрения реализации же если бот написан грамотно и в нём можно отделить бизнес-логику от особенностей мессенджера, то ничего особо сложного, нужно просто сделать другой метод отправки и доработать обработку приходящих сообщений. Если же бот написан тяп-ляп на соплях, то его в любом случае лучше переписать.
Maruf1777, дело в том, что при хранении оригинала данных на удалённом сервере в любом случае нельзя будет хранить всегда актуальную версию, её придётся периодически обновлять, и если обновлять часто - гуглу это может не понравиться. Конечно, если боту пишут максимум пару раз в час, то можно вообще не заморачиваться и скачивать всегда, но я подозреваю, что там заметно больше.
Треды не так надо использовать. Сделать тред, запустить его в фоне в самом начале работы скрипта и пусть он с определённой периодичностью скачивает файл, парсит его в новую переменную, а потом присваивает старой новое значение (чтобы не было срабатываний бота в момент скачивания с неполными данными). Запускать в send_text нет смысла, тем более, что это фактически означает, что данные будут скачаны скорее всего только к следующему вызову send_text, а текущий обработает по старым.
Моё изначальное предложение имеет побочный эффект в том, что скачивание файла может занимать некоторое время, что будет означать задержку с ответом. Ну тут надо смотреть по ситуации, допустима ли задержка такой продолжительности. Если нет - то надо делать регулярное обновление отдельным тредом, либо можно сделать проще: файл скачивать отдельным скриптом, а в боте лишь его время от времени перечитывать с диска).
Владимир Коротенко, да, но вот на таких примерах ещё лучше понимаешь, что не просто так половина визитов на сайты происходит с мобильных устройств, причём этот процент всё ещё растёт.
Rouslan943, это работает примерно так: вместо того, чтобы постоянно проверять каждый открытый коннект на наличие трафика, реализация использует функцию системы select (или её аналоги, больше почитать тут), которая принимает список файловых дескрипторов и позволяет программе уснуть до наступления событий ввода-вывода. Соответственно, когда в ядре системы случается факт ввод-вывод, относящийся к любому из этих файловых дескрипторов, ядро пробуждает программу и возвращает эти события. За счёт этого можно реагировать на трафик практически без расхода процессорного времени.
Алан Гибизов, нет, если модуль назвать __init__.py и положить в каталог, то его можно импортировать и просто по имени каталога. Я думаю, тут проблема в том, что не находится python или в момент запуска скрипта текущий каталог не каталог скрипта. Ну а вообще перехватить бы stderr и вывести ошибку.
SoreMix, я прочитал вопрос так, что речь идёт о контактных данных самого пользователя. Хотя, наверное, автор хотел список друзей, и вот тут да - нельзя никак (и это правильно).