CoderCastrov logo
CoderCastrov
Анализ данных

Мониторинг источников данных для поиска материалов с использованием Workbench

Мониторинг источников данных для поиска материалов с использованием Workbench
просмотров
5 мин чтение
#Анализ данных

В мире существует огромное количество данных. Они могут быть онлайн или офлайн, находиться в общедоступном облаке или в частном, быть защищенными в PDF-файлах, и, конечно же, присутствовать в социальных сетях. Форматы данных также разнообразны, и существуют так называемые "стандарты", борющиеся за господство: протоколы API, языки запросов, типы баз данных и форматы файлов.

Для многих опытных журналистов процесс расследования начинается с нескольких технических вопросов: как получить доступ к данным? Когда они обновляются? Какие инструменты следует использовать для их очистки, а какие для анализа и создания диаграмм? Не каждая редакция имеет команду по работе с данными такого же масштаба, как у Upshot, и разработчики часто не справляются с постоянным потоком запросов.

Workbench - это платформа, разработанная для помощи журналистам в поиске материалов в данных без необходимости программирования.

В этой статье мы рассмотрим, как использовать модульную среду Workbench для доступа и мониторинга данных: сначала мы загрузим данные из государственного API, чтобы создать встраиваемую диаграмму, которая будет обновляться при изменении источника данных. Затем мы создадим собственный парсер, который будет отправлять вам уведомления по электронной почте каждый раз, когда на определенной веб-странице будет опубликован новый аудиторский отчет.

Создайте свою учетную запись здесь.

I. Построение живой диаграммы с использованием государственных данных

Каждый квартал Сан-Франциско публикует снимок всех зданий, которые в настоящее время находятся в процессе строительства, от начального предложения до завершения. Город переживает известный жилищный кризис, поэтому давайте используем эти данные, чтобы визуализировать, сколько доступного и рыночного жилья в настоящее время находится в процессе планирования.

Вот что вы собираетесь построить: https://app.workbenchdata.com/workflows/1961/

Подключение к базе данных через общедоступный API

  • Добавьте модуль Добавить из URL.
Доступ к базе данных через использование URL-адреса API-точки
  • Вставьте URL в модуль: [https://data.sfgov.org/Housing-and-Buildings/Affordable-Housing-Pipeline/aaxw-2cb8](https://data.sfgov.org/Housing-and-Buildings/Affordable-Housing-Pipeline/aaxw-2cb8)
  • Нажмите Обновить, чтобы загрузить данные. Теперь вы подключены к базе данных города!
Каждая строка - это проект, проходящий через планировочный процесс города

Групповые проекты по районам и подсчет суммы доступного и рыночного жилья для каждого из них.

Projects are now grouped by neighborhoods

Создать диаграмму

  • Добавить модуль Column Chart с помощью поиска. Первый столбец будет интерпретирован как ось X, а все остальные столбцы - как серии.
Column Chart

Отслеживание изменений в исходных данных

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

  • Вернитесь в модуль Add from URL, нажмите manual, чтобы открыть диалоговое окно обновления рабочего процесса. Включите эту функцию, установите частоту на 1 день и установите флажок для получения электронной почты.
Workflow Update

Ваша диаграмма активна! Каждый раз, когда найдены новые данные, диаграмма будет обновлена, и вы получите электронное письмо.

II. Создание пользовательского парсера для отслеживания публикации документа в Интернете

Веб-сайт аудиторского офиса города Атланта регулярно публикует отчеты об аудите на своем веб-сайте. Эти отчеты являются важными для понимания состояния администрации города, но о них не всегда объявляют.

Давайте спарсим существующий список опубликованных отчетов и настроим оповещение по электронной почте, если этот список когда-либо изменится.

Выберите веб-страницу для парсинга

[http://www.atlaudit.org/audit-reports.html](http://www.atlaudit.org/audit-reports.html)

Найдите селектор XPath для выбора списка

Вам нужен "селектор XPath", чтобы указать Workbench, какие части веб-страницы нужно парсить. Современные веб-браузеры включают инструменты "Инспектор", которые помогают в этом.

  • В новой вкладке браузера прокрутите вниз до "списка всех публикаций, выпущенных Офисом аудитора города". Щелкните правой кнопкой мыши на первой ссылке в этом списке и выберите "Инспектировать" в меню, чтобы открыть панель Инспектора.
Щелкните правой кнопкой мыши и выберите «Инспектировать», чтобы открыть инспектор
  • В панели Инспектора будет выделен элемент <a>, соответствующий ссылке, которую вы исследуете. Щелкните правой кнопкой мыши на этом элементе и выберите "Копировать" и затем "Копировать XPath".
Щелкните правой кнопкой мыши на элементе, чтобы скопировать его селектор XPath
  • Вернитесь в Workbench, вставьте только что скопированный селектор XPath в модуль и нажмите "Парсить".
Результат после парсинга с использованием селектора XPath первого элемента в списке

Вы успешно спарсили одну ссылку из списка. Чтобы отслеживать изменения в списке со временем, нам теперь нужно спарсить все ссылки в нашем списке.

Отредактируйте селектор XPath, чтобы спарсить весь список

Давайте внимательно рассмотрим элемент HTML в инспекторе браузера:

В HTML элементы вложены друг в друга

Тег <a>, который мы выбрали, находится внутри родительского тега <li>, который сам находится внутри тега <ul>.

Теперь внимательно посмотрите на селектор XPath:

//*[@id=”wsite-content”]/div[3]/ul/li[1]/a

ul/li[1] означает "Выбрать первый <li> внутри <ul>". Если мы удалим [1], будут выбраны все элементы <li> внутри родительского <ul>, а также все теги <a> внутри каждого <li>.

  • Отредактируйте скопированный вами селектор XPath следующим образом, чтобы выбрать все элементы в списке:
//*[@id=”wsite-content”]/div[3]/ul/li/a
  • Нажмите Спарсить

4. Мониторинг изменений

Наконец, настроим модуль для мониторинга веб-страницы и автоматического парсинга списка при его обновлении.

В модуле нажмите на "Ручной" для открытия окна обновления рабочего процесса. Включите эту функцию, выберите частоту и установите флажок "Отправить мне электронное письмо при изменении данных".

Нажмите "Применить".

Ваш пользовательский парсер настроен! Если в выбранном списке появятся новые элементы или удалены существующие, будет выполнен новый парсинг, и Workbench уведомит вас по электронной почте.

Это всего лишь два примера того, как Workbench может помочь вам работать с данными без программирования. Ознакомьтесь с нашим интегрированным разделом учебника, чтобы узнать больше, выполняя практические задания.

Интегрированный учебник в Workbench