Как написать программу для отслеживания изменений на сайте?
beutifulsoup - не используем
Если сервер норм - он будет отдавать время последнего изменения
Если нет
requests 
забираем страницу
делаем хеш с содержимого, проверяем изменилась ли страница
делаем БД (набор файлов json, yaml)
scrapy
если страниц много (тысячи)
большу часть делает сам
Парсер хтмл - lxml
Пишем парсер на питоне, парсим весь сайт, сохраняем в удобоваримом виде, будь то бд или таблицы. 
Для парсинга есть requests, beautifulsoap etc... Потом либо по расписанию, либо ручками запускаем снова парсер, только уже не сразуохраняем данные, а сравниваем с нашей готовой базой и, в зависимости от целей, вносим изменения в нашу бд или сохраняем изменения в другую таблицу. Дальше уже таскаем инфу как душе угодно.