有没有办法使用命令行检查网页是否发生变化?像这样的东西:
$ check-for-changes https://bbc.co.uk/web-page
https://bbc.co.uk/web-page just changed
使用无头浏览器或其他机制?
答案1
该站点可能会提供带有 LAST-MODIFIED 标头的页面:执行 HEAD 请求并提取该标头。
curl --silent --head https://glennj.github.io | grep -i '^last-modified:'
但并非所有网站都会返回该标头。
答案2
首先,获取当前状态的指纹作为基线:
curl --silent www.example.com | md5sum > www.example.com.md5
然后,您可以随后检查指纹是否发生变化:
curl --silent www.example.com | md5sum > www.example.com.md5new
if ! cmp www.example.com.md5 www.example.com.md5new > /dev/null; then
printf "%s has changed from baseline!\n" "www.example.com"
fi
rm www.example.com.md5new