Получить данные с помощью размещенных в сети API, например, с помощью интерфейсов, предоставляемых онлайновыми базами данных и многими современными веб–приложениями (в т. ч. такими, как Twitter, Facebook и многие другие). Это просто фантастический способ получения доступа к государственным или коммерческим данным, а также к данным на сайтах социальных СМИ.
Извлечение данных из PDF–файлов. Это достаточно трудно, так как PDF является языком, разработанным для принтеров, и он содержит лишь малое количество информации о данных, отображенных в документе. Извлечение данных из PDF–файлов лежит за пределами этой книги, однако вы легко сможете найти инструменты и инструкции, которые помогут вам научиться этому.
Выскребание» информации с экрана. В ходе «выскребания» информации с экрана вы извлекаете структурированный контент из обычной веб–страницы с помощью утилиты («скребка») или небольшого кусочка кода. Хотя этот метод является весьма эффективным и может применяться в большом количестве случаев, он требует понимания того, как устроен Интернет.
Помня о всех этих замечательных технических возможностях, помните об одном простом варианте: зачастую бывает проще потратить еще немного времени на поиск файла с машиночитаемыми данными или позвонить в учреждение, в котором хранятся необходимые вам данные.
В данном разделе мы рассмотрим самый простой пример «выскребания» данных из веб–страницы в формате HTML.
Что такое машиночитаемые данные?
Цель всех упомянутых методов заключается в получении машиночитаемых данных. Машиночитаемые данные создаются для их обработки компьютером, а не для их презентации пользователю–человеку. Структура таких данных связана с содержащейся в них информацией, а не с тем, как они представляются пользователю на экране. Примеры легких машиночитаемых форматов включают в себя файлы CSV, XML, JSON и Excel, в то время как такие форматы, как документы Word, страницы HTML и файлы PDF служат больше для визуального представления информации. Например, PDF — это язык, который создан непосредственно для принтера, он несет информацию главным образом о положении линий и точек на странице, а не об отдельных символах.
«Выскребание» веб–сайтов: зачем?
Каждый из вас делал это: попав на веб–сайт и увидев интересную таблицу, вы пытались скопировать ее в Excel, чтобы поработать с ней или сохранить для дальнейшего использования. Однако это получается далеко не всегда, бывает и так, что нужная вам информация разбросана по большому количеству сайтов. Копировать данный вручную бывает очень утомительно, поэтому имеет смысл применить для данной процедуры кое–какой код.
Преимущество «выскребания» заключается в том, что вы можете применить этот метод практически на любом сайте — от прогнозов погоды до правительственных расходов, даже если на этом сайте нет API для доступа к сырым данным.
Что можно и что нельзя выскрести
Конечно, в процессе «выскребания» существуют некоторые ограничения. К факторам, затрудняющим «выскребание» данных с сайта, относятся:
Плохо отформатированный HTML–код, содержащий минимальное количество информации или не содержащий ее вовсе, например, старые сайты государственных органов.
Системы аутентификации, созданные для предотвращения автоматического доступа, например, введение кодов (CAPTCHA) или взимание оплаты.
Системы, отслеживающие по файлам cookies браузера, чем занимается пользователь в ходе данной сессии.
Отсутствие полного перечня элементов и возможности поиска с использованием групповых символов.
Блокирование масштабного доступа администраторами сервера.
Кроме того, существуют правовые ограничения: в некоторых странах признаются права на базы данных, которые могут ограничивать ваше право на использование информации, опубликованной в Интернете. В некоторых случаях вы можете проигнорировать эти положения и воспользоваться такой информацией — в зависимости от вашей юрисдикции вы можете обладать особыми правами как журналист. «Выскребание» свободно доступных официальных данных должно быть разрешено, но вы можете захотеть перепроверить их перед публикацией. Коммерческие организации и некоторые НПО менее терпимо относятся к «выскребанию» данных и могут подать жалобу на то, что вы «препятствуете» работе их систем. Использование другой информации может нарушать права физических лиц на неприкосновенность личной жизни и, таким образом, нарушать законы о неприкосновенности личной жизни или профессиональную этику.
Читать дальше