Возможно, вам будет интересно посмотреть Pjscrape (отказ от ответственности: это мой проект). Это инструмент для просмотра веб-страниц, созданный на основе PhantomJS, который предоставляет вам полный доступ к странице в jQuery в контексте браузера без головы. Это позволяет легко извлекать полуструктурированные данные из веб-страниц через командную строку, особенно если страница, которую вы просматриваете, имеет согласованную структуру для новых элементов.
Например, вы можете извлечь все названия курсов из этого каталога курсов со следующим кодом:
pjs.addScraper(
// the page you're scraping
'http://www.ischool.berkeley.edu/courses/catalog',
// selector for elements you want to pull text from
'.views-row .views-field-title'
);
// suppress STDOUT logging
pjs.config('log', 'none');
Запуск этого из командной строки дает вам JSON для STDOUT по умолчанию:
~> phantomjs /path/to/pjscrape.js my_script.js
["W10. Introduction to Information","24. Freshman Seminar", ...]
Так что было бы довольно просто запускать этот скрипт на регулярной основе, записывать вывод в файл и затем предупреждать вас, когда новый вывод не соответствует предыдущей очистке. Вы также можете написать свои собственные функции скребка, так что есть большая гибкость для более сложной очистки, если простой селектор не сработает.