Хотите заглянуть вовнутрь и узнать, как устроен AllMyChanges.com? Сегодня я немного расскажу вам, как работает наш робот и почему ему удается так хорошо находить информацию о релизах.
На самом деле, весь наш робот, это просто набор функций.
Поиск и обработка ченьджлогов состоит из нескольких этапов:
Части 1,2 и 5 вполне себе механические и не требуют от робота особого интеллекта.
В предыдущей статье я упоминал о том, что AllMyChanges поддерживает несколько различных источников данных. Во-первых, он умеет выкачивать из из Git и Mercurial. Во-вторых — умеет скачивать HTML страницы, как по одной, так и рекурсивно обходя весь сайт. Ну и в-третьих, наш робот может скачивать некоторую информацию из App Store и Google Play.
На самом деле, весь наш робот, это просто набор функций.
Поиск и обработка ченьджлогов состоит из нескольких этапов:
- надо понять, каким образом получать данные по урлу;
- использовать выбранный метод, чтобы скачать данные на диск;
- пройтись по скачанным файлам и извлечь из них куски, которые имеют номер версии и описание;
- понять, какие куски реально являются частью ченьджлога, а какие – просто мусор;
- сложить найденное добро в базу.
Части 1,2 и 5 вполне себе механические и не требуют от робота особого интеллекта.
Получение данных
В предыдущей статье я упоминал о том, что AllMyChanges поддерживает несколько различных источников данных. Во-первых, он умеет выкачивать из из Git и Mercurial. Во-вторых — умеет скачивать HTML страницы, как по одной, так и рекурсивно обходя весь сайт. Ну и в-третьих, наш робот может скачивать некоторую информацию из App Store и Google Play.