![][1]Это вторая статья про создание и использование скриптов для веб-скрейпинга на Node.js.
В [первой статье][2] разбиралась простейшая задача из мира веб-скрейпинга. Именно такие задачи достаются веб-скрейперам в подавляющем большинстве случаев – получение данных с незащищённых HTML-страниц стабильно работающего сайта. Быстрый анализ сайта, HTTP-запросы при помощи [needle][3] (организованные при помощи [tress][4]), рекурсивный проход по ссылкам, DOM-парсинг при помощи [cheerio][5] – вот это вот всё.
В этой статье разбирается более сложный случай. Не из тех, когда приходится отказываться от взятого с боем заказа, но из тех, которые начинающему скрейперу могут сорвать дедлайн. К слову, эта задача содержалась в реальном заказе на одной международной бирже фриланса, и первый исполнитель её провалил.
Цель этой статьи (как и прошлой) – показать весь процесс создания и использования скрипта от постановки задачи и до получения конечного результата, однако темы, уже раскрытые в первой статье, освещаются здесь довольно кратко, так что начать я рекомендую с первой статьи. Тут акцент будет на анализ сайта с точки зрения веб-скрейпинга, выявление подводных камней и способы их обхода.
[Читать дальше →][6]
[1]:
https://habrastorage.org/files/aa6/c13/e2c/aa6c13e2c79e4aefb0fa46d896f7ed86.png
[2]:
https://habrahabr.ru/post/301426/
[3]:
https://github.com/tomas/needle
[4]:
https://github.com/astur/tress
[5]:
https://github.com/cheeriojs/cheerio
[6]:
https://habrahabr.ru/post/302766/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut