如何定期刷新网页?

来源:百度文库 编辑:神马文学网 时间:2024/04/25 11:42:46
问:
您好,脚本专家!如何定期刷新网页?
-- TZ
答:
您好,TZ。您知道,前几周对于脚本专家来说很难过,毕竟,我们确信我们中的一位将被任命为美国最高法院的下一任院长。(我们甚至购买了法官袍和一切必要的东西,不知道为什么 Peter 不让我们归还这些法官袍了。)然而,我们却不得不坐下来看 John Roberts 回答关于严格解释主义和法律判例适用性的问题。说得容易!我们倒想看看 John Roberts 怎么回答诸如“如何定期刷新网页?”这样的问题。
哦,对了:您也许是想看我们回答诸如“如何定期刷新网页?”这样的问题。好的:
On Error Resume NextSet objExplorer = CreateObject("InternetExplorer.Application")objExplorer.Navigate "http://www.microsoft.com/technet/scriptcenter"objExplorer.Visible = 1Wscript.Sleep 5000Set objDoc = objExplorer.DocumentDo While TrueWscript.Sleep 30000objDoc.Location.Reload(True)If Err <> 0 ThenWscript.QuitEnd IfLoop
这里巧妙地利用脚本来启动 Internet Explorer,然后让该脚本将命令传递给此浏览器。要实现此目的,首先添加 On Error Resume Next 语句(以后将进行详细介绍),然后创建一个 InternetExplorer.Application 对象实例。使用 Navigate 方法来打开所需的网页(嘿,真巧:竟然是“脚本中心”主页!),然后将 Visible 属性设置为 1。(这很重要吗?如果我们真想看到 Internet Explorer 实例,它确实很重要。)
接下来,使用 Wscript.Sleep 将脚本暂停 5 秒(5,000 毫秒)。这样做是为了确保在继续之前完全加载了 Internet Explorer;如果没有完全加载 Internet Explorer,那么下一行代码很可能会失败,这意味着我们的脚本很可能会失败。
顺便说一句,下一行代码将创建对 Internet Explorer 文档对象的对象引用。因为要刷新网页就不得不重新加载当前的 Internet Explorer 文档,所以必须这样做。这正是 Internet Explorer 对象模型的工作方式。
创建此对象引用之后,设置一个将会永远运行的 Do While 循环。(不用担心,要停止该脚本很容易。)在该循环内,调用 Sleep 方法并使脚本暂停 30 秒(这是因为我们决定每隔 30 秒刷新一次网页)。如果我们想每隔两分钟刷新一次网页怎么办呢?没问题,只要使用下面一行代码就可以了,它会使脚本暂停 120 秒(120,000 毫秒)。
Wscript.Sleep 120000
到 30 秒后,调用 Reload 方法来重新加载当前文档。向 Reload 传递一个参数 - True,它将通知 Internet Explorer 从 Web 服务器重新加载文档。如果没有此参数,Reload 就会从 Internet Explorer 缓存重新加载文档,这意味着我们将不能获得最新和最全的网页。
调用 Reload 方法之后,检查 Err 对象的值。如果发生了错误(并且导致该错误的主要原因是有人关闭了浏览器窗口),只要终止脚本即可。如果没有发生错误,则进入下一轮循环,等待 30 秒,然后全部重新启动。
是的,结束该脚本的简便方法就是:关闭浏览器窗口。执行该操作后,脚本会在 30 秒内终止。
到此您已得到了答案:用于定期刷新网页的脚本。我们希望看到最高法院的被任命者(或者说,一个有资格任职院长的法官)写出诸如此类的东西。
嗯,好吧:我们的意思是除了 Ruth Bader Ginsburg 以外的其他人。