Перейти к основному содержимому

Модули Python

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

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

Основные

Универсальные модули, пакеты используемые в коде python

  • парсинг html страниц

  • автоматизация действий в браузере.

  • работа с .env переменными окружениями.

  • http запросы

  • транситерация текста

    • transliterate - транслитератор текста заточенный под славянские языки, русс док
    • unidecode Не использовал - принимает строки в Юникоде и пытается представить их в символах ASCII. русс док.
  • Асинхронность

    • aiofiles - Асинхронный доступ к файловой системе.
  • Видео

    • ffmpeg-python - Обертка Python для FFmpeg — с поддержкой сложной фильтрации

Пакеты

Специализированные пакеты, выполняющие как правило одну функцию. Полезно для изучения. Перенять практику.

  • habr-scraper - Парсер страниц хабра.
    • понравилась структура организации кода.

Модуль timeit

Модуль timeit предоставляет простой способ измерения времени выполнения (производительности) маленьких кусочков кода Python.

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

Пример timeit

def f(x):
return x**2
def g(x):
return x**4
def h(x):
return x**8

import timeit
# множественный вызов функций
print(timeit.timeit('[func(42) for func in (f,g,h)]', globals=globals()))

# вариант одиночного вызова функции f
print(timeit.timeit('f(42)', globals=globals()))