Тестовое задание
- Парсер данных через селениум на сайте https://www.nseindia.com/ Алгоритм:
- Зайти на https://www.nseindia.com
- Навестись (hover) на MARKET DATA
- Кликнуть на Pre-Open Market
- Спарсить данные Final Price по всем позициям на странице и вывести их в csv файл. Имя;цена После этого сымитировать небольшой пользовательский сценарий использования сайта. Здесь по своему желанию, но как пример:
- Зайти на главную страницу
- Пролистать вниз до графика
- Выбрать график "NIFTY BANK"
- Нажать “View all” под "TOP 5 STOCKS - NIFTY BANK"
- Выбрать в селекторе “NIFTY ALPHA 50”
- Пролистать таблицу до конца
- Парсинг последних твитов Elon Musk. Используя HTTP-запрос получить список последних 10 твитов Илона Маска . Вывести в лог только текст (если есть) последних твитов и для каждого поста вывести ссылки на аккаунты авторов 3х последних комментариев.Действия должны повторять пользовательский путь, официальное API Twitter в задаче не должно быть использовано. Будет плюсом:
- Использование проксирования
- Схожесть поведения с реальным пользовательским насколько это возможно
- Реализация на Ruby, Python
Для запуска: Скачать репозиторий Загрузить необходимые библиотеки в ручную или с помощью requirements.txt
Описание:
В файле Task #1 выполненеие задания 1. Используются:
selenium,
undetected chrome (обычный вебдрайвер сайт не пускает),
webdriver_manager (для установки вебдрайвера),
расширение в папке proxy_auth_plugin с введенным прокси,
bs4 (для удобного парсинга таблицы),
time (для создания искусственной задержки),
os,
csv
Результат парсинга будет сохранен в results.csv.
Для запуска необходимо запустить Task #1.py.
В файле Task #2 выполненеие задания 2. Используются:
snscrape (для парсинга твиттов без использования официального API Twitter),
os (для подключения прокси, необходимо ввести прокси, либо подключить VPN)
Результат парсинга будет выведен в консоль.
Для запуска необходимо запустить Task #2.py, подключить прокси либо отказаться, ввести логин пользователя без @, чьи твиты необходимо спарсить.