Документация модуля skydns_url2cat

Модуль skydns_url2cat на языке программирования Python

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

Для работы с модулем его необходимо установить на каждую целевую систему. Установка производится с помощью pip. После установки будут доступны несколько команд:

  • skydns-url2cat - для разовой проверки урла по заданной базе
  • skydns-url2cat-update - для обновления базы через сервера ООО «СкайДНС»

Программный интерфейс

Пример использования модуля:

>>> import skydns_url2cat

>>> skydns_url2cat.init(path_to_skydns_db)
True
>>> skydns_url2cat.lookup('google.com')
('google.com/', (48,))

Предупреждение

База sqlite работает нестабильно на сетевых файловых системах.

Примечание

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

Перечитывание базы

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

Автоматическое перечитывание

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

>>> import skydns_url2cat

>>> skydns_url2cat.init(path_to_skydns_db)
True
>>> skydns_url2cat.auto_refresh()
>>> skydns_url2cat.lookup('google.com')
('google.com/', (48,))

После этого модуль будет самостоятельно отслеживать изменение файла и будет производить перечитывание самостоятельно.

Обновление

Обновление происходит с помощью запуска команды

$ skydns-url2cat-update <path_to_db> <username> <password>

При этом произойдет проверка доступности обновлений, скачивание и применение обновления к указанной базе.

Настроить периодический запуск скрипта можно при помощи cron.

Модуль skydns_url2cat

exception skydns_url2cat.reader.DatabaseError
class skydns_url2cat.reader.Reader

Класс для чтения содежимого базы

configure(path, username=None, password=None)

Настраивает объект, задает путь до базы данных и авторизационные данные

lookup(url)

Функция для получения категории урла

Возвращяет кортеж из 2 элементов:

  1. Урл который найден в базе
  2. Список id категорий

Если урл не найден или невозможно разобрать, то первый элемент будет None.

Exception:UrlParseError
Параметры:url – str
Результат:tuple
lookup_with_names(url)

Функция для получения категории урла. В отличие от метода lookup возращяет список имен категорий.

category(i)

Возвращает имя категории

categories()

Возвращает доступные категории

languages()

Возвращает доступные локализации

category_for_lang(lang, i)

Возвращает имя категории в заданной локализации

categories_for_lang(lang)

Возвращает категории в заданной локализации

rollback()

Инициализировать автоматические перечитывание