TGINSIGHT CHAT
Python Academy
@python_academy
EducaciónPython Academy — один канал вместо тысячи учебников Чат канала: @python_academy_chat Сотрудничество: @zubar89 Канал включён в перечень РКН: https://rkn.link/TVu
Posts recientes
Pág. 68 de 85 · 1,014 posts
Publicado 22 sept
aiogram: Создание Telegram ботов Библиотека aiogram предоставляет мощный и удобный способ создания ботов для Telegram на языке Python. Если вы хотите автоматизировать взаимодействие с пользователями или создать бота для своего бизнеса, то aiogram станет вашим надежным инструментом. Установка aiogram производится через pip. Эта библиотека предоставляет асинхронный интерфейс для работы с Telegram API и позволяет легко создавать и управлять ботами. Вы можете отправлять и получать сообщения, создавать клавиатуры для взаимодействия с пользователями, а также выполнять множество других действий. В этом примере мы инициализируем бота с помощью aiogram, создаем обработчик для команды /start, и запускаем бота с помощью executor.start_polling. Не забудьте заменить "YOUR_TELEGRAM_BOT_TOKEN" на токен вашего бота. aiogram делает создание ботов для Telegram простым и эффективным, что делает его отличным выбором для разработчиков, которые хотят взаимодействовать со своей аудиторией.
Publicado 22 sept
BeautifulSoup 4: Инструмент для разбора HTML Библиотека BeautifulSoup, часто называемая bs4, - инструмент для разбора и анализа HTML и XML документов в Python. Если вы работаете с веб-страницами и вам нужно извлечь информацию из HTML-кода, bs4 отлично подойдет для этого. Установка bs4 также проста и выполняется через pip. С bs4 вы можете легко извлекать данные из HTML, навигировать по документу, находить и извлекать теги и их атрибуты. Это делает bs4 идеальным инструментом для веб-скрапинга, анализа веб-страниц, извлечения данных и многих других задач.
spotDL: Автоматизация загрузки музыки из Spotify Библиотека spotDL - это мощный инструмент для автоматизации процесса загрузки музыки из Spotify. Если вы ищете способ легко и быстро получить аудиотреки с этой популярной стриминговой платформы, то spotDL может стать вашим идеальным партнером. Установка spotDL также проста и выполняется через pip. Эта библиотека предоставляет удобные средства для поиска и загрузки музыки из Spotify. Она работает асинхронно и поддерживает асинхронный синтаксис с помощью async/await, что делает ее отличным инструментом для современных приложений, где требуется автоматизированный доступ к аудиоконтенту. spotDL позволяет выполнять поиск треков, альбомов или плейлистов по запросам и загружать их на ваше устройство. Он также предоставляет возможность выбора желаемого качества аудио и множество других опций для настройки загрузки. Библиотека spotDL не только удобна для скачивания музыки для личного пользования, но также может быть использована для создания аудиоархивов, подкастов или даже для автоматизации процесса создания музыкальных бэкапов. #spotify#spotDL#аудио#автоматизация
Асинхронные запросы с aiohttp Модуль aiohttp представляет из себя асинхронный HTTP клиент/сервер для asyncio и Python. Он позволяет выполнять асинхронные HTTP запросы, что делает его идеальным инструментом для современных приложений, где требуется высокая производительность и параллелизм. Установка aiohttp производится через pip. Чтобы начать делать асинхронные запросы, вам потребуется взаимодействовать с ним с помощью синтаксиса async/await. Запросы, такие как GET, POST, PUT и DELETE, оформляются чисто и ясно. Объекты ответов содержат все необходимые атрибуты для обработки ответов от сервера. Модуль aiohttp подходит не только для работы с асинхронными веб-сервисами, но и для асинхронного скрапинга веб-страниц. #модули
Hashtags
Publicado 15 sept
Мощная декларативная библиотека для работы с датой и временем Большинство разработчиков знают про модуль datetime из стандартной библиотеки - достаточно хороший инструмент для работы с временем. Но не лишним будет узнать про его мощное расширение - dateutil. dateutil позволяет писать краткий и декларативный код для решения задач по взаимодействию с датой и временем. На скриншоте показано получение первого дня прошлого месяца с помощью dateutil и без. Примечательно то, что dateutil позиционируется как расширение для datetime, что значит, что они друг с другом совместимы.
Простой, мощный и асинхронный веб-фреймворк Одним из популярных фреймворков для разработки серверной части на Python является FastAPI. К слову, он уже догоняет Django и Flask по звездам на GitHub. FastAPI предназначен для быстрого и легкого старта работы с возможностью масштабирования до сложных приложений. Он является одним из самых быстрых фреймворков на Python. Для создания минимального рабочего приложения достаточно кода выше. После запуска такого скрипта можете перейти в браузере по адресу http://127.0.0.1:8000/ и посмотреть результат. #модули
Hashtags
Перечисления Python поддерживает простой механизм работы с перечислениями, которые ещё называют enum. Подобные перечисления удобно использовать для хранения списков констант. Из документации можно узнать о том, что Enum — это набор символических имён, привязанных к уникальным, неизменным значениям. Члены одного перечисления можно сравнивать на идентичность. Также можно задать геттер через @property, который используют для получения перечислений в других форматах. В примере реализовано перечисление цветов в RGB, а через геттер их можно получить в формате hex. #enum
Hashtags
Пишем асинхронных ботов для ВК Под постом про проект подписчика, связанный с написанием ВК ботов, в комментариях упомянули про модуль vkbottle, про который сейчас и расскажем. Библиотека является асинхронной и требует минимум кода со стороны разработчика, что позволяет сконцентрироваться на задаче, не тратя силы и время на само взаимодействие с API. Код, написанный на vkbottle, чем-то похож на всем знакомый flask. А пример выше реализует бота, который отвечает сообщением "Здравствуй!" на "Привет". #боты#vk
Упрощение создания операторов сравнения Для создания объектов с поддержкой операторов сравнения в классе обычно требуется реализовать большое количество магических методов, а именно – __lt__, __le__, __eq__, __ne__, __gt__, __ge__. Про то, что делает каждый из них расскажем отдельным постом, но сейчас покажем, как можно сильно упростить реализацию подобного класса. Для этого можно использовать декоратор total_ordering из пакета functools. В таком случае достаточно реализовать в классе только __lt__ и __eq__. Эти два метода являются минимумом, который нужен декоратору для конструирования остальных методов. #классы
Hashtags
Режим разработки Оказывается, еще в Python 3.7 появилась возможность запускать скрипты со специальным флагом -X для указания различных вариантов реализации. Например, -X dev запускает скрипт в режиме разработки с функциями отладки и runtime-проверки, которые не используются по умолчанию из-за своей медлительности. Также этот режим выводит дополнительные предупреждения в следующих случаях: — Незакрытые файлы; — Unawaited корутины; — Неизвестная кодировка для str.encode; — Проблемы с выделением памяти. В целом, классная штука и имеет смысл периодически запускать скрипты в таком режиме, чтобы не упустить никакие баги. #python
Hashtags
Очистка элементов в последовательности Встроенный модуль itertools был создан для работы с более сложными случаями итераторов. Плюс модуля в том, что он быстро работает и оптимизирован в плане памяти. Иногда возникает необходимость в удалении ненужных объектов последовательности. Как раз для этого и используют itertools, а именно метод compress. Первым аргументом передается какой-либо контейнер, например список. Вторым аргументом — логические значения, соответствующие элементам в последовательности. Если логическое значения равно True или 1, то элемент сохраняется в последовательности, в противном случае — удаляется из нее. #itertools
Hashtags
Нахождение наиболее частых элементов списка Если необходимо найти несколько наиболее часто повторяющихся значений, лучше воспользоваться счетчиком Counter из библиотеки collections. Метод Counter.most_common(x) возвращает x кортежей, в которых первое значение – элемент, а второе – количество его повторений. #collections#counter
Hashtags