Как создается агрегатор?

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

У вас есть паук/искатель, который сканирует веб-страницы для поиска необходимой мне информации (как я скажу сканеру, что сканировать, потому что я не хочу получать всю сеть?)? Затем система индексирования индексирует и упорядочивает информацию, которую я сканирую, а также являюсь поисковой системой?

Используются ли такие системы, как Nutch lucene.apache.org/nutch, для того, что я хочу? Вы рекомендуете что-то еще?

Или вы можете порекомендовать другой подход?

Например, как построен Techmeme.com? (это агрегатор технологических новостей, и он полностью автоматизирован - только недавно они добавили некоторую человеческую интервенцию). Что потребуется, чтобы построить такую ​​услугу?

Или как Kayak.com объединяет свои данные? (Это служба агрегатора путешествий.)

Ответы

Ответ 1

Все зависит от агрегатора, который вы ищете.

Типы:

  • Определено Losely. Обычно для этого требуется, чтобы источник данных был очень гибким в определении типа сбора информации (отвечает на вопрос о том, что этот сайт/информация, связанная с путешествием? Юмор? Бизнес связан?)
  • Конкретный - это ослабляет требование в хранилище данных, которое требует все данные, связанные с конкретным путешествием, для полетов, цен на отели и т.д.

Обычно агрегатор представляет собой систему подпрограмм:

  • Grabber, это ищет и захватывает весь контент, который необходимо суммировать.
  • Summerization - обычно это делается с помощью запросов к db и может корректироваться на основе пользовательских настроек [через логику программирования]
  • View - это форматы информации о том, что пользователь хотел бы видеть, и может реагировать на отзывы о том, что пользователь любит или не любит предложенный элемент.

Ответ 2

Для базового взгляда - проверьте это: http://en.wikipedia.org/wiki/Aggregator

Он даст вам общий обзор агрегаторов.

С точки зрения создания собственного агрегатора, если вы ищете что-то из коробки, которое может получить контент, который вы хотите, я бы предложил следующее: http://dailyme.com/

Если вы ищете кодовую базу/архитектуру для создания своего собственного агрегатор-сервиса - я бы предложил посмотреть на что-то прямое - например: Открыть Reddit из http://www.reddit.com/

Ответ 3

Вам нужно определить, что будет делать ваше приложение. Создание собственного веб-искателя - огромная задача, поскольку вы, как правило, продолжаете добавлять новые функции, поскольку вы считаете, что они вам нужны... только для усложнения вашего дизайна и т.д.

Построение агрегатора сильно отличается. В то время как искатель просто извлекает данные для последующей обработки, агрегатор принимает уже определенные наборы данных и объединяет их. Если вы используете агрегатор, вы, вероятно, захотите найти уже определенные каналы путешествий, финансовые каналы, данные о путешествиях и т.д. Агрегатору проще построить ИМО, но он более ограничен.

Если вы хотите создать искатель, вам нужно будет определить стартовые страницы, определить конечные условия (глубина обхода, время и т.д.) и т.д., а затем продолжить обработку данных (то есть совокупность, суммировать и т.д.).