170 похожих чатов

Привет, подскажите как запустить две задачи в асинхронном режиме -

бот pyrogram и websocket сервер? И возможно ли это? Вот пример https://pastebin.com/rNx5iTzt понимаю что запускаю бота pyrogram неправильно, как правильно не могу найти и понять

49 ответов

38 просмотров

попробуй через таски https://docs.python.org/3/library/asyncio-task.html#creating-tasks

Acc- Автор вопроса

Как понять в асинхронном режиме ?

Acc- Автор вопроса
antonio salieri
Как понять в асинхронном режиме ?

Когда задачи выполняются одновременно не блокируя друг друга

Acc
Когда задачи выполняются одновременно не блокируя ...

Можно в докер композ завернуть или в разных процессах запускать . Модуль multiprocessing

Acc- Автор вопроса

А зачем тебе вообще пирограм? Вещь, так скажем, специфическая

Tishka17
А зачем тебе вообще пирограм? Вещь, так скажем, сп...

Тоже самое могу сказать про дата классы

Acc
Хотелось бы именно асинхронно сделать

Я может специфику не понимаю: у тебя тг бот и веб сокет сервер. Как они взаимодействует

Почему бы для тгбота не взять обычную либу, работающую с ботапи

Я просто не понял откуда взялось что у него бот? Я не вижу даже в коде авторизации через токен

Тогда с чего ты решил, что датаклассы специфическая вещь и зачем вообще влез с этим в разговор?

Tishka17
Тогда с чего ты решил, что датаклассы специфическа...

Ну по моему мнению, а пирограмм даже я когда-то использовал для юзер бота

Василий
Ну по моему мнению, а пирограмм даже я когда-то ис...

Юзербот это буквально нарушение правил использования аккаунтов. Для ботов акки создаются через botfather

Acc- Автор вопроса
MagMigo
попробуй через таски https://docs.python.org/3/lib...

Пытаюсь запихнуть в create_task(), вебсокет сервер добавляется и работает, pyrogram не хочет: https://pastebin.com/AnsQRBr3: выдает RuntimeWarning: coroutine 'Start.start' was never awaited self.start() RuntimeWarning: Enable tracemalloc to get the object allocation traceback Подскажите пож-та что делаю не так

Acc- Автор вопроса
Acc
Пытаюсь запихнуть в create_task(), вебсокет сервер...

подозреваю проблема в том что pyrogram запускается app = Client("ХХХХХХХХ") app.run() И его нельзя просто так добавить в task

Acc- Автор вопроса
Tishka17
Почему бы для тгбота не взять обычную либу, работа...

Потому что бот апи это прослойка по факту более медленная чем mtprotoapi

Acc- Автор вопроса
Tishka17
Я просто не понял откуда взялось что у него бот? Я...

Если авторизация прошла, для повторного подключения токен уже не нужен, достаточно имя сессии.

Acc- Автор вопроса
Acc
Пытаюсь запихнуть в create_task(), вебсокет сервер...

подозреваю проблема в том что pyrogram запускается app = Client("ХХХХХХХХ") app.run() И его нельзя просто так добавить в task. Но как сделать правильно не могу понять, подскажите пож-та

А как ты собираешься горизонтальное масштабирование делать с mtproto?

Acc- Автор вопроса
Tishka17
А как ты собираешься горизонтальное масштабировани...

mtproto позволяет использовать много параллельных сессий для бота в отличие от ботапи. если ты про это

Acc- Автор вопроса
Tishka17
А как ты собираешься горизонтальное масштабировани...

можешь дать совет как запустить код через таск?

Acc
mtproto позволяет использовать много параллельных ...

Насколько я знаю, не позволяет. То есть попытаться можно, но телега не это реагирует не очень. Сам не проверял

Acc
позволяет

Пойду спрошу у ребят

Acc- Автор вопроса
Tishka17
Пойду спрошу у ребят

спроси пож-та если есть возможность как завернуть запуск такого кода в таск asyncio from pyrogram import Client app = Client("my_account") app.run()

Acc
спроси пож-та если есть возможность как завернуть ...

https://t.me/tdlibchat/60877 Вот тут какое-то обсуждение двух сессий для бота. Судя по всему это не особо приветствуется и может не работать.

Acc
спроси пож-та если есть возможность как завернуть ...

Так а действительно зачем тебе пирограм?

Acc- Автор вопроса
Tishka17
https://t.me/tdlibchat/60877 Вот тут какое-то обс...

так на скрине ботапи. http прослойка перед mtproto. ботапи не позволяет мультисессии. я говорил про mtproto

Acc
так на скрине ботапи. http прослойка перед mtproto...

Там дальше ещё какое-то обсуждение, но согласен явного ответа не видно

Acc- Автор вопроса
Tishka17
Так а действительно зачем тебе пирограм?

чтоб по mtproto работать с ботом ж))

Acc- Автор вопроса
Tishka17
Делать вам нечего :)

помогите запихнуть его старт в таск асинка))

Acc
помогите запихнуть его старт в таск асинка))

Я все ещё считаю, что проще было взять bot api + aiohttp и посылать через него. Ковыряться в пирограме очень лениво, они там такое наворотил для асинкио что прям хз даже

Acc- Автор вопроса
Tishka17
Я все ещё считаю, что проще было взять bot api + a...

мало функционала и медленно. уже смотрю на aiogram, он тоже умеет mtproto и вроде человеческий запуск через asyncio

Acc
мало функционала и медленно. уже смотрю на aiogram...

Aiogram не умеет мтпрото, это именно ботапи

Acc
мало функционала и медленно. уже смотрю на aiogram...

скорее наоборот насчет скорости, для мтпрото данные то ширфуются дополнительно

ZeN
скорее наоборот насчет скорости, для мтпрото данны...

Нет. Ботапи это буквально клиент мтпрото, предоставляющий доступ к своим фичам по хттп

Acc- Автор вопроса
Tishka17
Нет. Ботапи это буквально клиент мтпрото, предоста...

Ну вот в этом и медленно по идее. Даже не хочется тестить чесговоря

Acc- Автор вопроса
Tishka17
Aiogram не умеет мтпрото, это именно ботапи

да, действительно. хабр обманул

Acc
Ну вот в этом и медленно по идее. Даже не хочется ...

То есть никаких замеров ты не делал?

Acc
Ну вот в этом и медленно по идее. Даже не хочется ...

Я бы предложил не ебать мозг с пирограмом, а взять аиограм. Будет более поддерживаемое решение, возможность масштабирования. А пирограм это скорее поиграться. Ты сессию даже между серверами таскать задолбаешься в реальном деплое

Acc- Автор вопроса
Tishka17
То есть никаких замеров ты не делал?

Нет. И не хочу) запросами пихать команды точно будет медленнее

Acc
Нет. И не хочу) запросами пихать команды точно буд...

Предлагаю тебе тогда пойти писать на си, а не питоне. Будет быстрее работать

Acc- Автор вопроса

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
Я хочу запустить свой проект в тг. Что-то между пирамидой и майнилкой. Еще подобного ничего не было. Уникальная идея. Нужен именно не бот, а приложение. С ввод, выводом тон...
Павел А.
6
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Реально в одиночку написать игровой движок на Си?
ㅤ (SVO)
11
Всем привет, товарищи! Можете меня поздравить, получил "отлично" за дисциплину "языки программирования низкого уровня". Честно говоря, не очень хочу, чтобы основы асма, которы...
Ыиу
1
Карта сайта