издание
2021
Научный редактор С. Бычковский
Переводчик Е. Сандицкая
Литературный редактор Н. Хлебина
Художник В. Мостипан
Корректоры Н. Гринчик, Е. Павлович, Е. издание . — СПб. : Питер, 2021. ISBN 978-5-4461-1693-5
© ООО Издательство "Питер", 2021
Все права защищены. Никакая часть данной книги не может
быть воспроизведена в какой бы то ни было форме без
письменного разрешения владельцев авторских прав. Введение
Если человек не слишком хорошо знаком с
программированием, оно ему может показаться чем-то вроде
волшебства. Но если программирование — волшебство, то веб-
скрапинг — это очень сильное колдунство: написав простую
автоматизированную программу, можно отправлять запросы
на веб-серверы, запрашивать с них данные, а затем
анализировать их и извлекать необходимую информацию. Работая инженером-программистом, я обнаружила, что
веб-скрапинг — одна из немногих областей
программирования, восхищающая как разработчиков, так и
обычных людей.
Умение легко написать простой бот, который
бы собирал данные и передавал их через терминал или
сохранял в базе данных, не перестает повергать в некий трепет
от осознания своих возможностей, независимо от того, сколько
раз вам приходилось делать это раньше. К сожалению, общаясь с другими программистами на тему
веб-скрапинга, я обнаружила, что не все хорошо понимают
суть метода. Одни считают его не вполне законным (и они
ошибаются), другие не умеют обрабатывать страницы,
содержащие много кода JavaScript или требующие регистрации. Многие не знают, как начать крупный проект по скрапингу или
даже где искать нужные данные. Книга призвана ответить на
многие из этих вопросов, развеять ошибочные представления о
веб-скрапинге, а также предоставить исчерпывающее
руководство по решению его наиболее распространенных
задач. Веб-скрапинг — обширная и быстро развивающаяся
область, поэтому я постаралась представить здесь не только
общие принципы, но и конкретные примеры, охватывающие
практически все способы сбора данных, с которыми вы,
вероятно, столкнетесь. В книге приводятся примеры кода,
демонстрирующие эти принципы и позволяющие проверить их
на практике. Сами примеры можно использовать и изменять
как с указанием авторства, так и без него (хотя благодарности
всегда приветствуются). Что такое веб-скрапинг
Автоматизированный сбор данных в Интернете почти так же
стар, как и сам Интернет. Несмотря на то что термин «веб-
скрапинг» не является новым, еще несколько лет назад эту
методику чаще называли анализом интерфейсных данных,
интеллектуальным анализом данных, сбором веб-данных и т. п. Похоже, что наконец-то все пришли к единому мнению и
предпочли называть это веб-скрапингом, поэтому я буду
использовать данный термин на протяжении всей книги, хотя
специализированные программы, которые просматривают
несколько веб-страниц, я буду называть веб-краулерами, а
программы, предназначенные для собственно веб-скрапинга,
— ботами.