Три способа выполнить множество задач с asyncio
Функция для примера:
async def do_it(n):
await asyncio.sleep(random.uniform(0.5, 1))
return n
1. Последовательный вызов
async def main():
for i in range(100):
result = await do_it(i)
Такой вызов имеет смысл только тогда, когда результат одной задачи требуется для вызова следующей.
Если они независимы, то это антипаттерн, так как аналогичен простому синхронному вызову по очереди.
2. Упорядоченный результат
async def main():
tasks = [do_it(i) for i in range(100)]
results = await asyncio.gather(*tasks)
Выполняет корутины конкурентно и возвращает результат в виде списка.
Полезен когда требуется получить результаты в том же порядке в котором задачи отправлены.
3. Результат по мере готовности
tasks = [asyncio.create_task(do_it(i)) for i in range(100)]
for cor in asyncio.as_completed(tasks):
result = await cor
Так же выполняет корутины конкурентно, но не гарантирует порядок. Результат возвращается по мере готовности, каждый отдельно.
Полезен когда нужно обработать любой ответ как можно скорее.
#async
📰Instant View for Telegram Browser
In 2016, Telegram launched the Instant View standard — which automatically optimizes articles into perfectly formatted pages for your device with zero load times. This feature works for thousands of the most popular sites.
Telegram's in-app browser can now convert any article you are viewing into a more readable, lightweight layout.
To change a page to Instant View format, open the browser menu and select Show Instant View.
#Browser
👉The TG Times
📰In-App Browser
In the latest Beta version of Telegram for Android, you can visit web pages using the in-app browser without having to leave Telegram.
#Browser
👉The TG Times
Nanobrowser
Nanobrowser is an open-source AI web automation tool that runs in your browser. A free alternative to OpenAI Operator with flexible LLM options and multi-agent system.
🔗 Links:
- Add it to your browser (Only Edge and Chrome)
- Demo video
- Features
- Source code
Organization: Nanobrowser
❤️ Support the Project
If this project makes your life easier, here are a few quick ways to show some love:
⭐ Star the repo/app
☕ Buy a coffee for the developer
🛠 Contribute code, issues, or pull-requests
🏷 Tags: #AI#Browser#Extension
🔤OSINT-браузер на базе OPERA Mobile
Я помню, что в предыдущих постах хвалил браузер Venator OSINT, который активно развивался (до определенной поры) и даже приобрел две дополнительный сборки: Venator Red — для исследования даркнета и Venator Security — версия с повышенным упором на безопасность.
Однако проект не обновляли уже больше года, и это вынудило меня искать альтернативные решения. Так я пришел к мысли о создании собственной версии OSINT-браузера. В качестве основы для него я выбрал портативную версию OPERA, которую можно было бы носить с собой на флешке.
OPERA имеет возможность добавления расширений, в том числе нейросетей, а также обладает достаточной приватностью. Интерфейс более чем современный. Оставалось импортировать в него свою подборку из 1700+ полезных ресурсов, а также разбить их по темам исследований. Результат превзошел ожидания.
P.S. Впрочем, для сторонников иных браузеров, осталась возможность импорта моей подборки источников, также доступных по ссылке выше.
🍪Поддержать канал
📱НАШИ КОНТАКТЫ
#⃣#OSINT#OPERA#BROWSER