Python
FastApi
Общие команды
Установка pip install fastapi uvicorn Ручной запуск (api - имя файла, app - имя объекта FastApi...
Маршрутизация
Добавление маршрутов Основной файл: from fastapi import FastAPI from todo import todo_router ...
Pydantic
class Item(BaseModel): item: str status: str class Todo(BaseModel): id: ...
Jinja2
Формат Jinja2 Переменные шаблона Jinja могут относиться к любому типу или объекту Python, если и...
Авторизация и аутентификация
Ссылки: Fastapi users документация Role-based authentification Подготовка проекта python -m v...
SQLAlchemy
Sqlalchemy
Установка Ядро pip install sqlalchemy Драйвер для postgres, mysql pip install psycopg2 pi...
ORM режим
Таблица это класс с требованиями: Потомок объекта, возвращаемого функцией declarative_base Вк...
Core режим
Сначала необходимо определить, как данные хранятся в таблице. Варианты определения: Объект Tab...
Пример проекта
Структура проекта Директория / файл Описание alembic/ Настройки alembic co...
Alembic
Модули
Описание модулей
Хранение конфигурации Configparser стандартная библиотека для чтения и записи .ini файлов. Инстр...
jsonschema
Используется для валидации json схемы. По умолчанию дополнительно указанные ключи (не существующи...
Pydantic 2
Описание Библиотека валидации (проверка на соответствие типов) и трансформации (автоматическое п...
Rabbitmq
Базовая информация
Авторизация через ВК
Перейти на VK для разработчиков Создать новое приложение, страницы настроек: В настройках п...
Тестирование Playwright
Начало
Официальный сайт проекта Установка python -m pip install playwright Проверка установки playwr...
Локаторы
Локаторы: способ поиска элементов на странице. Поэтому они являются методами page В VSC Ctrl+Cli...
Actions
Действие Описание click() Однократное нажатие. Опции: button="left" modifier...
События (Events)
События в page.goto В переменной wait_until. load: загрузка всего контента domcontentloaded:...
Аутентификация
При 2FA аутентификации возникают проблемы при повторном исполнении скрипта. Для обхода этого испо...
Pytest & Playwright
Pytest Имена файлов тестов должны иметь префикс test_ или постфикс _test. Имена тестов должны им...
Дополнительные возможности
Скриншоты Скрин страницы page.screenshot(path="", full_page=True) Скрин элемента тоже работает...
Ожидание
from playwright.sync_api import Page, expect DOCS_URL = "https://playwright.dev/python/docs...