[#] Web scraping на Node.js и проблемные сайты
habrabot(difrex,1) — All
2016-06-07 23:30:03


![][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