每10秒检查一次网站的Bash脚本

时间:2016-03-11 01:23:49

标签: bash web

以下脚本检查网站内容,以确定是否每10秒对其进行一次更改。这是一个非常敏感的应用程序。如果网站上的某些内容发生了变化,我只需要几秒钟来do。然后它将开始新的下载和比较周期,并等待下一次更改和do周期。 do其他内容尚未编写脚本,与问题无关。

问题:对于公共网站而言,每个 10-15秒下载单个页面的脚本是否会成为一个问题。如果是这样,有没有其他方法来监控网站,无人值守?

#!/bin/bash
Domain="example.com"
Ocontent=$(curl -L "$Domain")
Ncontent="$Ocontent"

until [  "$Ocontent" != "$Ncontent" ]; do
Ocontent=$(curl -L "$Domain")

#CONTENT CHANGED TRUE
#if [ "$Ocontent" == "$Ncontent ]; then
#  Ocontent=$(curl -L "$Domain")
#fi

echo "$Ocontent"
sleep 10
done

1 个答案:

答案 0 :(得分:0)

您遇到的问题:

  • 如果网站注意到并出现问题,您最终可能会被禁止使用IP列表。使用IP池或其他分布式资源可以缓解这种情况。
  • 不太可能每隔x秒对网站精确进行ping操作。网络延迟可能会导致很大的差异。
  • 如果您获得网络分区,您的代码应该知道如何应对。 (如果你的连接断开怎么办?应该怎么办?)
  • 请注意,获取即时回复只是下载网页的一部分。参考文件可能会有变化,例如css,javascript或图像,这些变化不会仅仅从原始的http响应中立即显现出来。