/crawler

Crawler

Primary LanguagePython

Crawler

Версия 0.4

Авторы: Артём Романов (artem.romanov.03@bk.ru), Евгений Сергеев ()

Ревью выполнили:

Описание

Веб-краулер без индексирования с robots.txt

Требования

  • Python версии не ниже 3.6 (используется 3.10.2)
  • aiohttp версии 3.8 или выше (используется 3.8.3)
  • yarl версии 1.8 или выше (используется 1.8.2)
  • asyncio версии 3.4 или выше (используется 3.4.3)
  • lxml версии 4.9 или выше (используется 4.9.1)

Состав

  • Запуск: crawler.py
  • Модули: src/
  • Логика: src/fetch_task.py
  • Парсер аргументов: src/args_parser.py
  • HTML парсер: src/html_parser.py
  • Асинхронка: src/pool.py
  • Старт: src/start.py
  • Тесты: src/tests.py

Консольная версия

Справка по запуску: python crawler.py --help

Пример запуска: python crawler.py {link}

Запуск тестов: python -m unittest src/tests.py

Реализовано

  • Поддержка robots.txt
  • Асинхронность
  • Зеркализация сайтов
  • Mock юниттесты
  • Парсинг аргументов
  • Парсинг HTML
  • Парсинг robots.txt
  • Парсинг ссылок