Евгений Иванов, пользователь пишет боту. Бот периодически дёргает метод /getUpdates и полчает сообщения от пользователей. В сообщениях есть chat_id.
И это, не надо думать, что API это для спама. Не надо "послать ссылку в мессенджер по базе пользователей", это чистый спам и за это блокируют везде. В WA именно с этого и начинаются все блокировки "Моего Очень Нужного WhatsApp Аккаунта" за нарушение условий.
Настоятельно рекомендую НИКОГДА ТАК НЕ ДЕЛАТЬ. Если нужны константы - то сгенерировать их один раз (можно отдельным файлом и импортировать), если нужны какие-то динамические данные (к примеру, лежащие в файлике txt/yaml/json/xml/что-то-ещё рядом) - использовать словарь.
Выдержать-то может и выдержит, но ответить каждому без дополнительных телодвижений не сможет, потому что скорость отправки сообщений - 30 штук в секунду. А тут придётся более 160. Но это как раз можно решить через поддержку Телеграма и поднять лимит. А вот то, что при такой нагрузке придётся решать проблемы явно не связанные с aiogram довольно очевидно. Например, придётся позаботиться о скорости работы базы данных (а точнее даже об отложенной записи в неё) и уж точно отказаться от популярной у начинающих sqlite.
Марк Ешкилев, не надо воспринимать "можно как-то сделать" как какую-то плёвую задачу на пять минут. И ни у кого нет действительно всей музыки в мире. Даже у монстров типа ютуба или спотифая.
Вопрос о легализации музыки следует начинать тогда, когда мессенджер дорастёт до такого уровня, чтобы содержать хотя бы одного юриста. А пока это ручное поделие для "я с друзьями", для сохранения в котором хочется чистоты и легальности, проще реализовывать невозможность посылать музыки совсем. Или вместо пересылки файлами разрешить пересылку ссылок на тех самых, кто о своей легальности позаботился (в конце концов, шлют же пользователи видео с ютуба как ссылки, но с просмотром в embeded browser, без передачи самих видеофайлов).
Михаил, php точно так же будет загружать "шаблон" и в нём точно так же надо будет как-то доставать данные, или запуском headless-браузера, или изучением сайта для повторения его механизма. Как я уже и писал в https://qna.habr.com/q/1151358
PS: судя по этому коду, он находит в районе слов ssrModel json'чик с нужными данными. Ничто не мешает это повторить хоть на python, хоть на fortran, главное язык знать и понимать, а не пытаться решать методом тыкания булавкой по колесу.
CityCat4, сама крипта при этом всё равно вне политики.
Но её же непосредственный недостаток в том, что там всё открыто. Я предвижу, что путём датамайнинга из криптовалюты научатся выделять токсичные активы вроде связанных с российскими олигархами, наркоторговлей и чёрным рынком и будут блокировать их использование конечными получателями, использующими криптовалюты. Если бумажные доллары с некоторыми номерами неизвестно где ходили, пока перетекали из какой-нибудь забегаловки в Сиэттле до застреленного при задержании наркобарыги из Эфиопии, то с криптой весь путь каждого нанобиткойна полностью виден от и до. И чем крупнее суммы, тем тяжелее их скрыть.
Михаил, вообще-то нет, он запускает браузер при инициализации веб-драйвера. Но, конечно, держать запущенным целый браузер неприятно.
Копать в сторону анализа запросов, которые делает браузер на этой странице, к чтению js-кода на ней... В зависимости от хитровывернутости программеров этого сайта всё может быть от "данные лежат в json прям в тексте страницы" до "данные получаются из вебсокетов, зашифрованные каким-нибудь криптографическим алгоритмом с необычными параметрами"..
alexeimene, в такой форме это задание, а не вопрос, и нарушает правила сайта. За выполнением заданий - на фриланс. Например, прям на хабровый https://freelance.habr.com/
UC_PROGRAMMER int, user_class dick если не ошибаюсь
Именно так. Причём как сравить словарь с числом - непонятно. Причём непонятно и как вообще сравнивать, и зачем вообще сравнивать. Кстати, если уж копируешь мой пример, зачем явно определённое название user_class_names изменил на user_class?
get_user_class(user.id) за что отвечает
Это функция, которую ещё надо написать. Она может брать user_class из базы, или может из какого-то кэша (например, глобальной переменной-словаря со всеми пользователями), может генерировать класс по умолчанию для пользователя, которого нет в базе...
Я же говорил, что привёл пример для описания принципа, а не законченное решение задачи.
AHTUxPK, если этот API-метод используется на сайте, то посмотреть, что браузер отправляет на сайт, и пытаться воспроизвести. Возможно, там банально заголовок Accept-Languages поможет.