Alex
типичный африканский спам
Vladimir
Это обычный африканский развод
Vladimir
типичный африканский спам
Кстати, почему этим говном именно оттуда пуляют
Vladyslav 🇺🇦🇪🇺
Я такого нн сидел
Vladimir
Я такого нн сидел
Да уже лет 5 встречается в разном виде.
Дмитрий
Кстати, почему этим говном именно оттуда пуляют
На отвратительных была статья про культ кибер негров в нигерии
Alex
нынче встречаю все реже, спам фильтры хорошо работают
Alex
Я такого нн сидел
ты просто вошел в интернет в эпоху когда уже большая часть спама не долетает до твоего ящика.
Tishka17
Мда
Vladyslav 🇺🇦🇪🇺
Просто обычно приходит типа, увеличение члена или форекс
Tishka17
Совсем во флудилку чат превратили
Alex
сорян, прекращаем
Tishka17
Начать РО что ли раздавать
Anonymous
B
Табулятором (панчером) в перфокартах, вестимо.
Tishka17
Чо
Vladimir
Ответ простой — как повезет
Tishka17
Я не понял где там обращение к БД
Alex
что за хуйню ты щас только что написал?
Alex
вангую он там пытается ловить NameError
Tishka17
что за хуйню ты щас только что написал?
Кажется, это многопоточная хуйня
Andrey
там какой-то лонгполлинг где нужно ловить приходящие данные?
R
Я не понял где там обращение к БД
условно БД, там подключения к апи сайта
Alex
а не вот это вот
R
покажи код человеческий
делаю подключение к бирже по апи - пример https://python-binance.readthedocs.io/en/latest/account.html#id2
R
через костыль) нужно сделать запуск, из примера - order = client.order_limit_sell( symbol='BNBBTC', quantity=100, price='0.00001') когда перемнную BNB еще не добавили на биржу, и как только добавят - исполнить код
Stepan
Тебя за нон-стоп долбёжку точно заблокируют, лучше раз в N делай запрос. И без Try Except просто через If data: присваивай, иначе pass
Stepan
Если нет возможности на вебхук, тогда вообще долбить-чекать не надо, они сами тебе отправят уведомление
Stepan
код выглядит типо такого: a = None While not a: b = get_b() if not b: continue a = b Ну опять же таймаут-ожидание надо воткнуть в этот цикл
Stepan
Он закончится, как только b будет получено по API. А так будет запрашивать, пока не получит.
Stepan
Удалил сообщение =) хаха
Alex
спс, ну там вроде ограничение стоит 10 запросов в секунду
Там есть пример с функцией раз в 10 сек задержкой https://realpython.com/primer-on-python-decorators/
Nikolay
Господа, очень странная ситуация. Ни гугл, ни листание исходников на гитхабе не помогли. Хелп :) Использую aiopg + SQLalchemy. Суть софтины: читает из базы события раз в 20 сек - один таск, передает во второй таск через асинхронную очередь, во втором таске самописный пул асинхронных воркеров, который на каждое вычитанное из базы событие запускает еще один таск на обработку (или не запускает, в зависимости от количества свободных воркеров). В таске, который занимается обработкой событий, первое действие - вычитать из базы еще некоторые данные. И вот когда я прошу эти данные, происходит lock на, примерно, 5 сек. При этом я исключил проблему долгого запроса тем, что просто заменил его на select 1 Выглдяит код вот так: c = calls_source_cache_m.c query = calls_source_cache_m.select().\ where(c.http_history_item_id == history_item_id) async with self.engine.acquire() as conn: await conn.execute('SELECT 1') return Если return стоит после conn.execute(), то в дебаге я вижу ошибку (asyncio)[WARNING] - Executing <Handle <TaskWakeupMethWrapper object at 0x7fbad14840d8>(<Future finis...events.py:396>) created at /usr/lib/python3.7/asyncio/locks.py:231> took 5.007 seconds Если перемещаю return на строчку перед conn.execute(), то строка с ошибкой пропадает из лога. Ни у меня в коде, ни в коде aiopg нет ни одного упомянания asyncio.lock... Подскажете куда копать?
Саша
а time.sleep() у тебя нет случаем?
Саша
или ещё какой-нибудь блокирующий вызов
Nikolay
Я даже, грешным делом подумал, что этот метод может глючить или лочить цикл выполнения, после чего переделал один большой asyncio.sleep() на кучу маленьких слипов по 100мс - не дало результата
Саша
хм
Саша
ну правильней было бы открыть дебаггер и посмотреть кто этот тип: 0x7fbad14840d8
Nikolay
Ну и после loop.debug_mode(True) появляется ошибка, указывающая на /usr/lib/python3.7/asyncio/locks.py:231
Саша
и уже оттуда идти
Саша
какой ide пользуешься?
Nikolay
PyCharm Sommunity Edition, но не гнушаюсь линуксовой консоли
Nikolay
gdb - не мой бро, но мы знакомы в сишном прошлом
🍁 Jaŭhien
у питона - pdb)
🍁 Jaŭhien
а еще лучше ipdb
Саша
ну у пучарма есть консолька дебаггера снизу, остается только раставить точки останова
Саша
ну я щас подумал, что отлаживать асинхронный код - то ещё веселье)
Nikolay
у питона - pdb)
Так они же похожи) Я знаю как брейкпоин поставить, пошагово пройтись и вот это вот все. Но как получить объект по id и понять откуда он взялся - не в курсе
Саша
они среди объектов будут
Саша
что-то вроде этого
Саша
но как в пучарме выглядит - не скажу, тут гугл в помощь
Евгений
Привет, ребят. Только знакомлюсь с питоном после пхп, в основы вник. Хочу сделать первый тестовый проект, чтобы на реальном примере уже практиковаться. Решил сделать телеграм бота и сразу завис на хостинге. Для телеграм бота надо назначить вебхук куда будут отправляться щапросы, значит надо где то захоститься и заиметь там https. Так же нужна база данных (вот тут кстати не знаю, если в одной табличке около 2млн записей, то sqlite норм или чтото другое смотреть?) на хостинге. Собственно вопрос, где хостить бота? В AWS чтото пока совсем не разобрался, или где у питонистов принято вообще хоститься
Евгений
Евгений
Где хочешь, там и хостишься
ну вот пыховские мелкие проекты на beget. Но если например в докере разворачиваться то по сути на любом vps можно же?
🍁 Jaŭhien
ну для разработки можно заюзать ngrok или localhost.run
🍁 Jaŭhien
Когда будешь деплоить - уже на сервер зальешь
Евгений
а в aws можно все поднять, чтоб там и питоновские скрипты и база
🍁 Jaŭhien
Можно pythonanywhere или heroku
🍁 Jaŭhien
Можно в авс
Евгений
спасибо, хероку щас гляну
Евгений
зарегался там уже час назад но нифига не разобрался еще в нем
Андрей
>Паскаль ничему не научит и ничего не сделаешь Держи в курсе
Андрей
Heroku cli