Консолидация или путаница

Table Of Content

В этом посте я поделюсь своим опытом создания нашего инструмента для сбора мировых новостей и объясню, почему консолидация определенных стандартов полезна для более доступного интернета.
Когда вы посещаете веб-сайт, происходит несколько вещей в фоновом режиме. Страница медленно начинает загружаться в зависимости от загрузки медиа-файлов или файлов JavaScript. Для нас не важно, правильно ли создана страница, пока она выглядит хорошо и работает быстро. Мы легко можем извлечь нужные нам метаданные и перейти к основному контенту, обойдя все отвлекающие элементы (по крайней мере, я надеюсь). 1 балл за людей. Когда вы пытаетесь прочитать страницу как бот, у вас есть несколько способов. Если вы думаете, что у вас много времени и мощности сервера, вы можете использовать инструменты, такие как Selenium, и получить всю страницу со всеми загруженными JavaScript. Как вы можете себе представить, это занимает время, ненужное количество времени, так как бот пытается буквально запустить веб-браузер, как вы.
Альтернатива заключается в том, где происходит настоящая работа. Чтобы операция парсинга была быстрой и масштабной, нам нужно загружать только HTML и игнорировать остальное. Большинство крупных новостных сайтов используют онтологии, которые стали отраслевыми стандартами, позволяющими парсерам легко извлекать информацию, не обязательно понимая структуру метаданных. Поскольку нашей целью было получить представление о событиях, происходящих вокруг, в игру вступали местные СМИ. Это означало, что наши парсеры оставались ни с чем. Создание универсальной кодовой базы было одной из наших целей, поэтому специализированные парсеры для каждого отдельного местного новостного сайта не рассматривались.

То, что мы нашли в качестве решения, заключалось в простом игнорировании большей части метаданных, если мы можем получить их через RSS-каналы или карты сайта. Благодаря годам использования и стандартизации, RSS-каналы стали довольно надежными.
К счастью, это не все печаль и уныние. С тех пор, как мы начали, большинство веб-сайтов приняли системы управления контентом, которые являются стандартными или обновили свои веб-сайты, чтобы соответствовать общим стандартам. Даже когда мы парсим местный угандийский веб-сайт или Baghdad Post, мы сталкиваемся с хорошо отформатированными мета-полями в заголовке, что делает нашу жизнь бесконечно проще.

Важно отметить, что извлечение мета-полей - это одно, а извлечение контента - совсем другая история. В то время как веб-сайты пытаются помочь вам с мета-тегами, они работают против вас, когда дело доходит до контента. Некоторые веб-сайты имеют серьезные меры против парсинга, а некоторые имеют невероятно плохую структуру, которая работает как средство безопасности. Обнаружение того, где находится контент и определение, что является значимым, а что - нет, является сложной задачей, и только несколько компаний, таких как Diffbot и Webhose, предлагают свои услуги для этой задачи.
