- Понять принципы асинхронного программирования, используя библиотеку Asyncio
- Получить опыт тестирования(эмуляция действий пользователя) с использованием автоматизированного браузера Selenium. Использовать Arsenic для асинхронных задач.
- Освоить базовые принципы тестирования функционала проекта, используя Pytest.
Разработать парсер для сбора информации о вакансиях с сайтов по поиску работы.
Производится сбор следующих данных:
- название вакансии
- краткое описание вакансии
- полное описание вакансии
- название компании
- зарплата
- требования
- опыт работы
В качестве ORM использовать sqlalchemy. В качестве СУБД использовать PostgresSQL.
Реализовать возможность асинхронного сбора и асинхронного сохранения данных с нескольких сайтов. Использовать библиотеку Asyncio. Для сбора данных с сайтов использовать библиотеки Selenuim + Arsenic.
Провести тестирование сервиса посредством Pytest.
Для каждого сайта по поиску вакансий реализовать отдельный бэкенд, используя парадигмы ООП.
git clone https://github.com/aquaracer/Asynchronous-Web-Scraper.git async_scraper_app
cd async_scraper_app
python3 -m venv env
./env/bin/activate
pip install -r requirements.txt
python3 async_scraper.py
pytest .