Telegram Web Link
Отправка писем с использованием SMTP в Python

SMTP (Simple Mail Transfer Protocol) - это протокол, который обеспечивает отправку электронных писем. В Python для работы с этим протоколом доступен модуль smtplib из стандартной библиотеки.

Для начала соединения с почтовым сервером мы можем использовать класс SMTP_SSL, который обеспечивает защищенное соединение. Этому классу мы передаем адрес сервера и порт.

Чтобы авторизоваться на сервере, используем метод login, куда передаем логин и пароль пользователя. Для отправки электронной почты мы используем метод sendmail. Он принимает адрес отправителя, адрес получателя и текст сообщения. Важно помнить, что после отправки сообщения необходимо закрыть соединение с сервером с помощью метода quit().

Стоит учитывать, что некоторые почтовые сервисы могут иметь ограничения и дополнительные требования безопасности. Например, для работы с Gmail может понадобиться включить поддержку "доступа к ненадежным приложениям" и настроить двухфакторную аутентификацию.

#python #smtp
Автоматизируем браузер с Pyppeteer

Pyppeteer — это Python-библиотека, позволяющая управлять браузером с помощью инструмента Puppeteer, изначально разработанного для Node.js. Puppeteer предоставляет возможность автоматизировать взаимодействие с веб-страницами, выполнять сценарии на основе браузера, делать скриншоты, создавать PDF-файлы и многое другое.

Пример использования Pyppeteer для выполнения поиска в Google и сохранения результатов в виде скриншота доступен на фото.

#python #pyppeteer
Модуль warnings

Модуль warnings предоставляет возможность управления предупреждениями, которые могут быть выведены во время выполнения программы.

Модуль warnings полезен, когда необходимо предупредить пользователя о каком-либо условии в программе и это условие не требует создания исключения и завершения программы.

Кроме того, вы можете настроить различные параметры для управления предупреждениями, такие как фильтрация предупреждений определенного типа или их преобразование в ошибки.

#python
pow()

В Python функция pow() используется для вычисления степени числа. Вот как она работает:

result = pow(x, y, z)



где: x — основание степени,
y — показатель степени,
z (необязательный параметр) — модуль, по которому производится вычисление.
Если z указан, то pow(x, y, z) возвращает (x y) % z. Если z не указан, то возвращается x y.

#python
Валидаторы данных

Как правило, разработчики пишут регулярные выражения для обработки специфических строк. Но для таких данных как, почта или ссылка, изобретать велосипед не нужно.

Модуль validators позволяет использовать уже готовые валидаторы для самых распространенных задач. В примере можете как раз увидеть валидацию почты и ссылок.

Помимо этого, validators позволяет также работать с ipv4, ipv6, mac адресами и многим другим. В итоге, имеем лаконичный и простой модуль с хорошим функционалом.

#python #validators
This media is not supported in your browser
VIEW IN TELEGRAM
Президент OpenAI Грег Брокман только что показал, как ИИ общается с ИИ на примере нового GPT-4o. Перед Брокманом лежат два телефона, на которых открыты ИИ с разной формой взаимодействия: один голосовой, а другой может анализировать видео с камеры. Полное видео с разговором между тремя субъектами длится шесть минут.

Мы официально входим в эпоху, когда один ИИ будет загадывать другому ИИ загадку про два стула ¯\_(ツ)_/¯
Распознаем речь используя SpeechRecognition

SpeechRecognition — это библиотека на Python, которая предоставляет возможность использовать API для распознавания речи от различных компаний, таких как Google, Microsoft, IBM и другие. Кроме того, она поддерживает работу в офлайн-режиме.

Эта библиотека упрощает процесс интеграции голосовых команд и обработки аудиоданных в ваших проектах. Благодаря широкому спектру возможностей, SpeechRecognition подходит для создания приложений с голосовым управлением, интеллектуальных ассистентов и многого другого.

#python #speechrecognition
Отладка утечек памяти в Python приложении

Для отладки утечек памяти в Python можно использовать инструменты, такие как Memory Profiler и objgraph. Эти инструменты помогут вам выявить, какие объекты удерживают ссылки и могут вызывать утечки памяти.

Memory Profiler позволяет получить детальный отчет о потреблении памяти в каждой строке кода вашего скрипта. Чтобы воспользоваться этим инструментом, запустите вашу программу с помощью следующей команды:

python -m memory_profiler my_script.py


objgraph помогает визуализировать ссылки между объектами, что позволяет легко понять, какие объекты удерживают ссылки на другие объекты. Например, следующий код создаст изображение my_list.png, на котором будут показаны все объекты, на которые ссылается my_list, и все объекты, которые ссылаются на них.

Оба инструмента просты в использовании и предоставляют мощные средства для выявления и устранения утечек памяти в вашем приложении.

#python #memoryprofiler #objgraph
Центральный университет сотрудничает с 30 ведущими промышленными гигантами

Центральный университет — первый вуз в России на основе STEM-модели (Science, Technology, Engineering, Mathematics) — раскрыл 30 первых индустриальных партнеров.

Банк России, Норникель, VK, Росатом, МТС, Тинькофф, Avito, Kaspersky, Ozon, X5 Group и другие компании стали сооснователями, корпоративными инвесторами и индустриальными партнерами вуза. Компании создают собственные образовательные программы на базе ЦУ, становятся потенциальными работодателями для студентов и выпускников, предоставляют возможности прохождения стажировок и трудоустройства.

Что это дает студентам и компаниям? Партнерская модель вуза и взаимодействие с крупнейшим российским бизнесом с первых курсов станет социальным лифтом для студентов еще на этапе обучения. Студенты будут получать наиболее актуальные знания, востребованные на рынке, а работодатели — подготовленных специалистов, которые соответствуют их профессиональным.

Такой подход поможет решить одну из важнейших задач отрасли — дефицит квалифицированных ИТ-специалистов на рынке.
FFmpeg: Лучшее решение для обработки мультимедийных файлов

FFmpeg - это бесплатная и открытая библиотека и набор инструментов для обработки мультимедийных файлов. Она предоставляет мощные возможности для работы с видео, аудио и другими мультимедийными данными. FFmpeg является одним из самых популярных и универсальных инструментов для обработки мультимедиа в мире.

Для начала использования FFmpeg, вы можете установить библиотеку командой pip install ffmpeg-python. После этого, вы можете создавать собственные скрипты для обработки видео и аудио файлов, определяя нужные операции и параметры. ffmpeg-python обладает мощными возможностями для конвертации, обрезки, склеивания и многого другого.

Исходный код и документация доступны тут
Операции с zip архивами 

Для работы с zip файлами можно использовать встроенный модуль zipfile. Если кто не помнит, то zip файл — это архив, содержащий сжатые файлы. 

Просмотреть содержимое архива можно с помощью функции printdir, а извлечь все файлы можно вызвав extractfile

Также этот модуль позволяет создавать свои zip архивы, но мы решили не усложнять пример, поэтому просто прикладываем ссылку на документацию. 

#zipfile
Дизассемблирование

При запуске программы на python, написанный код преобразуется в байт-код, который затем может быть запущен в интерпретаторе Python. Встроенный модуль dis позволяет дизассемблировать байт-код в удобное представление для просмотра его инструкций. Полный спсиок инструкций байт-кода с описанием можно посмотреть в доке модуля.

На картинке показана работа этого модуля на примере функции, но такое можно повторить и с классами – в таком случае все его функции будут дизассемблированы.

#модули #байткод
Как перезагрузить импортированный модуль?

Чтобы перезагрузить импортированный модуль в Python, вы можете использовать функцию reload() из модуля importlib.

Замените module_name на фактическое имя модуля, который вы хотите перезагрузить.
Это может быть полезно при разработке и тестировании модулей, но не рекомендуется использовать в производственном коде без серьезных причин.

#модули
Daphne

Daphne — это сервер HTTP, HTTP2 и WebSocket для ASGI и ASGI-HTTP, разработанный для поддержки Django Channels. Он поддерживает автоматическое согласование протоколов; нет необходимости в префиксации URL-адресов для определения конечных точек WebSocket по сравнению с конечными точками HTTP.

#python
Новости для будущих студентов

Ректор Центрального университета Евгений Ивашкевич раскрыл планы вуза по вовлечению большого бизнеса в образовательные процессы страны. "Очень скоро мы можем остаться без инженерных и IT-кадров. Все понимают, что через 10–15 лет не с кем будет работать. Именно поэтому наша задача – это привлечь бизнес к решению проблем образования. Чтобы бизнес вкладывался в образовательные проекты в области информатики, физики и химии," - подчеркнул Ивашкевич.

По словам ректора, четыре года назад в стране профильную математику на ЕГЭ сдавало около 360 000 школьников, а в прошлом году – всего 283 000 школьников. "Компаниям недостаточно просто открывать свои кафедры в вузах. На таких кафедрах, как правило, учатся 30–40 человек, что совсем немного — это не решает проблему дефицита кадров стране," - пояснил он.

Именно поэтому был создан Центральный университет — вуз от бизнеса и для бизнеса. "Мы хотим дать нашим студентам и образование, и профессию. Только так можно обеспечить эффективный социальный лифт для выпускников, сделать их востребованными специалистами на рынке труда," - отметил Евгений.

18 и 19 мая Центральный университет проведет масштабный День открытых дверей перед стартом приемной кампании.

Мероприятие пройдет в головных офисах партнеров ЦУ — VK и Тинькофф.

🔗 Гостям обязательно нужно пройти регистрацию
Работа с методом str.replace() в Python

Python предлагает множество удобных встроенных методов для работы со строками. Один из таких методов - str.replace(), который используется для замены частей строки.

Метод принимает два основных аргумента: первый - это подстрока, которую нужно заменить в исходной строке, а второй - это подстрока, на которую происходит замена.

Кроме того, существует третий необязательный аргумент, определяющий количество замен старой подстроки на новую. Если он не указан, метод заменяет все вхождения.

#python #replace
dateparser

dateparser — это библиотека Python, предоставляющая удобные инструменты для разбора и анализа текстовых дат и времени. Она автоматически определяет формат даты и времени в текстовой строке и преобразует его в объект datetime. Это особенно полезно, когда у вас есть текстовые описания дат и времени в различных форматах, и вы хотите их структурировать.

Обратите внимание, что dateparser может использовать текущие локальные настройки для определения форматов даты и времени, поэтому результаты могут зависеть от настроек вашей системы. Вы также можете явно указать нужную локаль с помощью аргумента locales, если это необходимо.

#python #dateparser
NetworkX

NetworkX — это библиотека Python для анализа сложных сетей. Она предоставляет структуры данных для работы с графами (сетями) и реализует множество алгоритмов для анализа и визуализации сетевых данных.

Она может использоваться в различных областях, таких как социальные, биологические, транспортные, компьютерные сети и многих других.

#python
Forwarded from Норникель
Please open Telegram to view this post
VIEW IN TELEGRAM
Вычисляем размер объектов в памяти

Чтобы вычислить размер какого-либо объекта, можно воспользоваться функцией sys.getsizeof(object[, default]). Поскольку Python написан в полном соответствии с парадигмой ООП, таким объектом может быть все что угодно.

Однако, следует помнить, что хотя все built-in (встроенные) объекты и вернут правильный размер, в общем случае это не должно быть верно для каких-либо пользовательских объектов.

Аргумент default позволяет определить значение, которое будет возвращено, если тип объекта не предоставляет средства для извлечения размера и вызовет TypeError .

Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные служебные данные сборщика мусора, если конечно объект управляется сборщиком мусора.

#sys #sizeof #oop
2024/09/26 17:36:30
Back to Top
HTML Embed Code: