如何从终端检查网页的更改?

如何从终端检查网页的更改?

有没有办法使用命令行检查网页是否发生变化?像这样的东西:

$ 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

相关内容