CoderCastrov logo
CoderCastrov
Анализ данных

Как собрать информацию с нескольких страниц с помощью ParseHub, нажимая

Как собрать информацию с нескольких страниц с помощью ParseHub, нажимая
просмотров
3 мин чтение
#Анализ данных

В этом руководстве:

  • Сбор информации с нескольких страниц с помощью ParseHub, нажимая

Читайте больше руководств на: [http://alexhop.net/scraper/how-to-scrape-javascript-rendered-websites-with-python-selenium-headless-chrome/](http://alexhop.net/scraper/how-to-scrape-javascript-rendered-websites-with-python-selenium-headless-chrome/)

Сбор информации с нескольких страниц никогда не был таким простым с ParseHub. В этом руководстве мы расскажем, как пройти по страницам, нажимая на ссылки. Рекомендуется прочитать мое первое руководство по [Как собрать информацию с веб-страниц JavaScript с помощью ParseHub], чтобы ознакомиться с некоторыми функциями ParseHub.

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

Несколько страниц с помощью кликов

Начните вводить этот URL в браузере ParseHub и начните проект:

[https://finance.yahoo.com/quote/TSLA?p=TSLA](https://finance.yahoo.com/quote/TSLA?p=TSLA)

Нашей целью здесь является переход по каждому из тикеров (т.е. TEVA, TSLA, WDC и т.д.), щелкнув на их соответствующей странице, а затем получение их цены и времени.

На главном шаблоне, с первым выбором, щелкните по крайней мере 2 или 3 тикера (выделены зеленым), чтобы все остальные тикеры также стали зелеными. Это превратит выбор в множественный выбор, сигнализируемый командой "Начать новую запись":

_Нажмите на тикеры, пока все тикеры не станут зелеными_

На "Начать новую запись" нажмите на символ +, чтобы добавить команду клика. Это будет означать, что для каждого выбора (выделенного зеленым), нужно на них щелкнуть:

_Добавьте команду клика_

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

_Создайте новый шаблон во всплывающем окне после инициации команды клика_

Ваш новый шаблон теперь должен появиться прямо под главным шаблоном. Ваша новая страница также должна отражать первый клик. В моем случае он переходит по адресу: https://finance.yahoo.com/quote/TEVA?p=TEVA. Если этого не происходит, просто введите его в свой браузер и снова откройте новый шаблон.

На новом шаблоне добавим команду "Начать новую запись" под командой "Страница":

_На новом шаблоне начните новую запись_

Под командой "Начать новую запись" добавьте команду "Выбрать":

_Добавьте команду выбора_

Во время команды "Выбрать" щелкните по полному названию тикера и переименуйте команду в "full_name":

_Выберите заголовок или полное название тикера_

Добавьте еще одну команду "Выбрать" и щелкните по сумме в долларах, переименуйте команду в "price":

_Выберите рыночную цену_

Сделайте то же самое для даты/времени:

_Выберите дату/время_

Я всегда рекомендую получать URL, даже если эти данные будут дублировать данные родительской страницы (это станет понятно позже). Для этого добавьте команду "Извлечь" и первым параметром будет извлечение URL:

_Извлеките также URL_ _$location.href - это URL страницы_

Сохраните свой проект и запустите его для тестирования:

Тестовый запуск

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

_Проверьте правый нижний угол для данных с нескольких страниц_

Вот как выглядят данные после запуска парсера и загрузки CSV:

_run_results.csv_

Если у вас возникли проблемы, попробуйте сохранить это как файл .phj и импортировать его: [https://gist.github.com/alex4hoang/c1]. Сравните его с вашим собственным, чтобы убедиться, что вы делаете все правильно.