Читаем Пособие по журналистике данных полностью

Структура любой HTML–страница представляет собой иерархию контейнеров (которые задаются HTML–тэгами). Большой контейнер содержит в себе множество более мелких — например, таблицу, которая делится на более мелкие элементы: ряды и ячейки. Существует множество видов тегов, которые выполняют разные функции — некоторые создают контейнеры, другие оформляют таблицы, изображения или рисунки. Тэги могут иметь дополнительные свойства (например, они могут быть уникальными идентификаторами) и могут делиться на группы, называемые классами, что предоставляет возможность находить и захватывать определенные элементы в документе. Выбор необходимых элементов и извлечение их содержания играют определяющую роль в написании «скребка».

При просмотре элементов веб–страницы все ее содержимое может быть разбито на контейнеры внутри контейнеров.

Для «выскребания» веб–страниц вам необходимо узнать немного побольше о различных типах элементов, которые могут встречаться в HTML–документе. Например, элемент

охватывает всю таблицу, которая содержит в себе элементы (строка таблицы), которые формируют строки, а строки, в свою очередь, имеют элементы
(данные таблицы) для каждой ячейки. Наиболее часто вы будете сталкиваться с элементом
, который, по сути, обозначает какой–либо блок контента. Легче всего понять эти элементы можно, используя панель разработчикавашего браузера, которая позволит вам посмотреть, из чего состоит код, лежащий в основе той или иной части веб–страницы.

Тэги работают как разделители, обозначая начало и конец определенного блока. Например, означает начало выделенного курсивом текста, а тэг означает конец этого блока. Все просто.

Рис 55. The International Atomic Energy Agency’s (IAEA) portal (news.iaea.org)

Пример: сбор информации о происшествиях в ядерной отрасли с использованием кода на языке Python

NEWS — это портал Международного агентства по атомной энергии (МАГАТЭ), посвященный происшествиям в ядерной отрасли по всему миру (и являющийся уверенным кандидатом в члены Клуба роковых названий!). На этой веб–странице происшествия представлены в виде простого, похожего на блог списка, который может быть легко извлечен.

Для начала создайте новый «скребок» на языке Python на сайте ScraperWiki, в результате чего вы получите почти пустую область текста, в которой будет находиться только вспомогательный код. В другом окне откройте браузер, откройте там сайт МАГАТЭи затем откройте в этом браузере панель разработчика. В режиме просмотра «Элементы» попытайтесь найти HTML–элементы заголовка одной из новостей. Панель разработчика браузера помогает связывать элементы веб–страницы с лежащим в их основе HTML–кодом.

Изучая эту страницу, вы поймете, что заголовки являются элементами

, находящимися внутри элемента . Каждое событие — это строка , которая также содержит описание и дату. Если мы хотим извлечь заголовки всех событий, мы должны найти способ, который позволит нам последовательно выбрать каждую строку таблицы и извлечь из них текст, находящийся внутри элементов, обозначающих заголовки.

Чтобы преобразовать этот процесс в код, мы должны понять для себя все все его шаги. Чтобы лучше понять, что это за этапы, давайте сыграем в простую игру. В окне ScraperWiki попробуйте написать для себя индивидуальные инструкции по каждому шагу, который вы собираетесь сделать в ходе написания этого «скребка», наподобие пунктов в кулинарном рецепте (отбейте каждую строку хэш–кодом, чтобы дать понять языку Python, что это не настоящий компьютерный код). Например:

# Просмотреть все строки в таблице

# Unicorn не должен выходить за левый край

Постарайтесь быть как можно более точным и не предполагайте, что программа что–либо знает о странице, которую вы пытаетесь «выскрести».

Теперь, когда вы написали свой первый псевдо–код, давайте сравним его с реальным кодом нашего первого «скребка»:

import scraperwiki

from lxml import html

Перейти на страницу:

Похожие книги

Русский мат
Русский мат

Эта книга — первый в мире толковый словарь русского мата.Профессор Т. В. Ахметова всю свою жизнь собирала и изучала матерные слова и выражения, давно мечтала издать толковый словарь. Такая возможность представилась только в последнее время. Вместе с тем профессор предупреждает читателя: «Вы держите в руках толковый словарь "Русского мата". Помните, что в нем только матерные, похабные, нецензурные слова. Иных вы не встретите!»Во второе издание словаря включено составителем свыше 1700 новых слов. И теперь словарь включает в себя 5747 слов и выражений, которые проиллюстрированы частушками, анекдотами, стихами и цитатами из произведений русских классиков и современных поэтов и прозаиков. Всего в книге более 550 озорных частушек и анекдотов и свыше 2500 стихов и цитат из произведений.Издательство предупреждает: детям до 16 лет, ханжам и людям без чувства юмора читать книги этой серии запрещено!

Русский фольклор , Татьяна Васильевна Ахметова , Фархад Назипович Ильясов , Ф. Н. Ильясов

Языкознание, иностранные языки / Словари / Справочники / Языкознание / Образование и наука / Словари и Энциклопедии
Справочник школьного психолога
Справочник школьного психолога

В ваших руках уникальная книга – впервые школьная психология как практическое направление, ориентированное на изучение и улучшение обучения и воспитания детей в школьном возрасте, обретает свой словарь. Этим утверждается научная и практическая состоятельность данного направления в психологии и формируется основа для будущих теоретических исследований и практической работы.В справочнике более 250 статей, адекватно отражающих ситуацию в современной отечественной школьной психологии. Излагаются основные проблемы и задачи развития школьников, представлен материал по направлениям, формам и видам деятельности психолога в образовании, по видам диагностической, коррекционно-развивающей и консультативной работы школьного психолога, материал по обучению, воспитанию и развитию школьников. Книга предназначена школьным психологам, педагогам, студентам и аспирантам психологических и педагогических направлений деятельности, а также специалистам в области практической психологии.

Светлана Николаевна Костромина

Справочники
Справочник медицинской сестры
Справочник медицинской сестры

Книга «Справочник медицинской сестры» включает основную информацию по вопросам сестринского дела. Авторы рассказывают историю становления сестринского дела как науки, о морально-этических качествах медицинской сестры, ее профессиональной ответственности, правах пациента с учетом современного подхода к сестринской деятельности (читатели смогут узнать, что такое сестринский процесс).Отдельные разделы посвящены описанию, лечению, диагностике наиболее распространенных патологий и уходу за пациентом, помощи при неотложных состояниях. Кроме того, в книге приводятся описания основных медицинских манипуляций, выполняемых медсестрой.Издание может быть использовано в качестве учебного пособия для средних медицинских учебных заведений и как руководство по уходу за больными в домашних условиях.

Виктор Александрович Барановский , Владимир Александрович Плисов , Елена Юрьевна Храмова

Медицина / Справочники / Образование и наука / Словари и Энциклопедии