Как устроен поиск и парсинг ченьджлогов в AllMyChanges

Хабрахабр / Лучшие публикации за сутки.

Хотите заглянуть вовнутрь и узнать, как устроен AllMyChanges.com? Сегодня я немного расскажу вам, как работает наш робот и почему ему удается так хорошо находить информацию о релизах.

На самом деле, весь наш робот, это просто набор функций.
Поиск и обработка ченьджлогов состоит из нескольких этапов:

  1. надо понять, каким образом получать данные по урлу;
  2. использовать выбранный метод, чтобы скачать данные на диск;
  3. пройтись по скачанным файлам и извлечь из них куски, которые имеют номер версии и описание;
  4. понять, какие куски реально являются частью ченьджлога, а какие – просто мусор;
  5. сложить найденное добро в базу.

Части 1,2 и 5 вполне себе механические и не требуют от робота особого интеллекта.

Получение данных

В предыдущей статье я упоминал о том, что AllMyChanges поддерживает несколько различных источников данных. Во-первых, он умеет выкачивать из из Git и Mercurial. Во-вторых — умеет скачивать HTML страницы, как по одной, так и рекурсивно обходя весь сайт. Ну и в-третьих, наш робот может скачивать некоторую информацию из App Store и Google Play. Читать дальше

Добавить комментарий