Зачем? Модуль sqlite3 входит в штатную поставку python. Ставить его вручную нужно только в исключительных случаях. У меня такой случай был: django 3 не признавал чуть-чуть старый sqlite3, который есть штатно в Centos 7 с python 3.6, пришлось исхитряться.
EVOSandru6, использование WhatsApp Web в качестве API фейсбуку не очень нравится, и он иногда даже пытается с этим бороться. Поэтому нет ничего удивительного, что поставщики подобных решений в их каталоге отсутствуют.
Что касается официального API, в нём раньше были функции для управления группами (создавать новые, добавлять людей и всё такое), но их теперь выпилили, теперь там возможно только общение тет-а-тет с ботом и рассылка уведомлений по одобренным шаблонам.
В чём вообще задача? Саппортить обращающихся пользователей? Колл^Wчат-центры сейчас пилят все кому не лень, поддерживают и чатики на сайте, и обращения через телеграмного бота, ну и в WhatsApp тоже. Или для чего вообще вся эта затея?
polling - это, собственно, цикл работы программы, при котором всё остальное вызывается как обработчики событий на полученные от longpoll-запросов данные. Так что неудивительно, что нельзя во время его работы ничего делать.
Можно использовать треды; можно сделать нужный message.send перед началом polling, а всё дальнейшее уже в обработчиках событий; можно использовать asyncio; можно вместо цикла long poll делать единичными запросами, а между ними выполнять другие действия. В общем, варианты есть. Но в целом я бы начал с того, чтобы подумал об изменении задачи. Например, если надо тестировать взаимодействие пользователя с ботом, то не проще ли логику действий пользователя и сам бот реализовать отдельными скриптами?
Elvis, я в своё время очень нервничал, когда после многих лет общения с mysql начал использовать postgresql и столкнулся с неработой таких уже почти казалось бы очевидных мелочей.
А что тут неверного? Мы извлекаем users из таблицы st, прибавляем 1, изменяем users в таблице st на полученное значение и извлекаем его ещё раз. Было 0, стало 1, всё верно выводится.
Сергей Матковский, но если в канал никто не пишет (и on_message не вызывается), то вызова input не случится. Так что наверное не самое удачное решение, хотя для конкретной задачи может и сойдёт.
Сергей Ильин, насколько я понимаю, textract - это изначально абстрактный модуль, нацеленный через работу с помощью плагинов. Эти плагины могут делать что угодно, в том числе вызывать внешние команды, общаться с софтом через интерфейсы типа COM итд итп. Работа только с передачей файла по имени ограничивает разработчика, но зато расширяет возможности плагинов. Если есть желание, можно поразбираться в устройстве textract и понять, как конкретно он обрабатывает файлы .doc, может быть, можно его без особых усилий слегка переработать под себя.
Полина Игнатова, нужно иначе подойти к вопросу. Потребитель подобного контента получает его уже сейчас достаточно для того, чтобы быть достаточно сытым и не искать ещё больше. Чтобы на конкурентном рынке о твоём продукте узнали, нужно заплатить. Или деньгами, или усилиями. Например, с помощью ведения множества блогов на различных платфорамх, размещения своего контента на подходящих по тематике форумах итд итп, что само по себе утомительно, и всё это для расширения возможной аудитории,
Но и над сайтом тоже надо поработать. Ввожу вот zerozen.ru в гугле, первая ссылка ведёт куда надо, но с каким названием? "Что такое рассказы личной жизни С: лытдыбр читать" - я бы сразу подумал, что это какая-то заглушка для названия, а не реальный сайт, ищущий посетителей. В яндексе: "лытдыбр абсурд не реальные рассказы личной жизни читать..." - тут ещё и "нереальные" написано с ошибкой, что тоже отталкивает. Название должно быть названием, а не списком ключевых слов. Это я ещё в SEO ничего не смыслю, но вот сразу в глаза бросается.
И вообще, название "Смешные рассказы Семёныча", в сущности сказать, не самое удачное для поиска. Оно, конечно, даёт сразу нужный сайт в первой строке при таком написании, но если хоть немного его поменять... Например, "рассказы о Семёныче" - и уже вся первая страница заполнена чем угодно, кроме искомого. Увы.
Сергей Ильин, doc - бинарный формат. Его нельзя просто так "прочитать", нужно использовать какие-то библиотеки, которые этот формат смогут разобрать.
Конкретно вот textract не умеет из переменной, только из файла. Значит, надо записать во временный файл и его уже обрабатывать. Или всё-таки поискать другие библиотеки.
San4es123123, запрос выглядит нормально для исходной задачи. Чтобы про те даты - надо дополнительно пофильтровать в WHERE по start_ts и/или end_ts. Тут скорее надо понять, в какой день считать - по старту поездки или по окончании? Ведь поездка может закончиться в другой день, чем начаться. Или по пересечению?
Ещё одна проблема может быть в том, что может потребоваться вывести компании, у которых было 0 поездок в эти дни, но вроде в задаче этого условия нет?