Python/ django
58.9K subscribers
2.07K photos
61 videos
47 files
2.79K links
по всем вопросам @haarrp

@itchannels_telegram - 🔥 все ит-каналы

@ai_machinelearning_big_data -ML

@ArtificialIntelligencedl -AI

@datascienceiot - 📚

@pythonlbooks

РКН: clck.ru/3FmxmM
加入频道
🖥 Полезное руководство о #! в Python

🟡Когда вы читаете чужой Python код, то часто видите загадочную строку, которая всегда появляется вверху файла и начинается с характерной последовательности shebang #!.

🟡Короче говоря, shebang — это комментарий особого типа, который вы можете включать в исходный код, чтобы указать оболочке операционной системы, где найти интерпретатор для остальной части файла:
#!/usr/bin/python3

print("Hello, World!")


🟡Если вы используете shebang, он должен размещаться в первой строке вашего скрипта и должен начинаться со знака решётки #, за которым следует восклицательный знак !, известный как bang, отсюда и название shebang.

🟡Shebang имеет отношение только к исполняемым сценариям, которые вы хотите выполнять без явного указания программы для их запуска. Обычно вы не помещаете shebang в модуль Python, который содержит только определении функций и классов, предназначенные для импорта из других модулей. Поэтому используйте shebang, если вы не хотите ставить перед командой, которая запускает ваш скрипт Python, префикс python или python3.

📎 Читать подробнее

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Kali Linux
💻 Уязвимость в библиотеке aiohttp уже привлекла внимание хакеров

🗄Исследователи предупреждают, что недавно исправленная уязвимость в Python-библиотеке aiohttp (CVE-2024-23334) уже взята на вооружение хакерами, включая вымогательские группировки, такие как ShadowSyndicate.

🗄aiohttp — это опенсорсная библиотека, построенная на основе I/O фреймворка Asyncio и предназначенная для обработки большого количества одновременных HTTP-запросов без традиционного потокового нетворкинга. aiohttp часто используется технологическими компаниями, веб-разработчиками, бэкенд-инженерами и специалистами по анализу данных для создания высокопроизводительных веб-приложений и сервисов, объединяющих данные из множества внешних API.

🗄В конце января 2024 года aiohttp обновилась до версии 3.9.2, в которой устранили уязвимость CVE-2024-23334. Это path traversal баг, затрагивающий все версии aiohttp (начиная с 3.9.1) и старше, который позволяет удаленным злоумышленникам без авторизации получить доступ к файлам на уязвимых серверах.

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

🗄В конце февраля текущего года на GitHub появился PoC-эксплоит для CVE-2024-23334, а в начале марта на YouTube было опубликовано подробное видеоруководство по эксплуатации бага.

🗄Как теперь сообщают аналитики компании Cyble, их сканеры обнаруживают попытки эксплуатации CVE-2024-23334 начиная с 29 февраля, и атаки лишь усилились в марте. В основном попытки сканирования исходят с пяти IP-адресов, один из которых ранее был отмечен в отчете Group-IB и связан с вымогательской группировкой ShadowSyndicate.

@linuxkalii
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Python Mini Projects: a collection of projects to help you improve your programming skills.


Мини-проекты на Python.

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

🖥 Github

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Держите годный ролик, в котором описываются кейсы использования Pydantic

В ролике освещаются такие возможности Pydantic, как:
Валидация данных. Pydantic проверяет, что входные данные соответствуют ожидаемому типу и формату. Если данные не подходят, Pydantic выбрасывает исключение.

Преобразование типов. Pydantic автоматически преобразует входные данные в ожидаемые типы данных. Например, если входные данные представлены как строка, но ожидается, что они будут типа int, Pydantic попытается преобразовать строку в целое число.

Поддержка JSON. Pydantic интегрирован с библиотекой JSON Python, что позволяет легко преобразовывать объекты Pydantic в JSON и наоборот.

Использование аннотаций типов. Pydantic использует аннотации типов Python для определения ожидаемых типов данных и других параметров валидации.

Поддержка моделей. Вы можете определить модели данных, используя классы Python, и Pydantic заботится о валидации данных при создании объектов модели.

Настройка валидации. Pydantic позволяет настроить процесс валидации, используя валидаторы, которые могут быть определены в классе модели.

...и ещё много всего

Подробный кликабельный план видео
📎 Видео
📎 Вот ещё годный обзор Pydantic

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Таблица с возможностью поиска на Python с использованием Flet

В этом туториале рассматривается создание интерактивной таблицы с помощью Flet.
Причём с функциями поиска и фильтрации, что очень круто 🔥

🔜 Пошаговый туториал

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Динамическое создание экземпляра класса из строки в Python

Итак, для динамического создания экземпляра класса в Python можно использовать модуль importlib:
from importlib import import_module

module_name = 'your_module' # Определите название своего модуля
class_name = 'YourClass' # И название нужного вам класса

instance = getattr(import_module(module_name), class_name)()

Здесь функция import_module импортирует нужный модуль, getattr находит в нем класс, а () создает экземпляр этого класса.


Полезно оформить процесс создания экземпляра класса в виде переиспользуемой функции. Это сэкономит ваше время и усилия:
def get_instance(module_name, class_name):
try:
module = import_module(module_name)
class_obj = getattr(module, class_name)
instance = class_obj()
return instance
except ImportError:
print("Модуль отсутствует")
return None
except AttributeError:
print("Класс не найден")
return None


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

📎 Читать подробнее

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 GIL в Python: как его будут отключать

— «Python-разработчики, как правило, хорошо знают, что такое и для чего нужен GIL, вопросы по нему встречаются на большинстве собеседований, я и сам люблю их задавать. Но в CPython его скоро не будет. Да, core-разработчики CPython взяли курс на его удаление»

Держите интересную статью о том, как ведётся работа по ускорению CPython и удалению GIL.

Некоторые факты из статьи:
GIL (Global Interpreter Lock) является главным препятствием для настоящего параллелизма на уровне потоков в Python.

PEP 703 представил план внедрения флага компиляции --disable-gil для отключения GIL.

Изменения в Python будут разделены на четыре категории: подсчет ссылок, управление памятью, потокобезопасность контейнеров и блокировки и атомарные API.

Предлагаются различные техники для устранения недостатков GIL, включая раздельный подсчет ссылок, увековечивание и отложенный подсчет ссылок.

Управление памятью будет изменено с использованием потокобезопасного аллокатора Mimalloc.

Сборщик мусора потребует изменений для обеспечения гарантий, которые ранее предоставлялись GIL.

Потокобезопасность контейнеров будет обеспечена введением мьютексов на уровне каждого контейнера.

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

📎 Статья

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Python for OSINT. 21-day course for beginners

Бесплатный курс по Python для OSINT специалистов.

Курс научит автоматизировать различные рутинные задачи, связанные с OSINT исследованиями: сбор данных с веб-сайтов, сбор результатов поиска, работа с интернет-архивами, создание отчетов и многое другое.

Github

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Formcrawler: This script Crawls the website and finds the URLs that contain html forms.

Этот скрипт может сканировать веб-сайты и находить все ссылки, содержащие HTML-формы.

Очень полезно, чтобы находить формы для Blind XSS.

Blind XSS (Слепая XSS) — уязвимость, при которой хакер может внедрить скрипт на страницу, но не может увидеть его непосредственное выполнение.

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

⚙️Github

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Как быстро написать API на FastAPI с валидацией и базой данных

Держите полезную статью

Статья представляет собой руководство по созданию API с использованием FastAPI и Pydantic.

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

Создается структура проекта и добавляются функции для работы с базой данных и создания запросов.

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

📎 Статья

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM