-1

我在 Web 服务器上有一个自定义脚本,该脚本是通过从浏览器调用网页来运行的,一旦打开页面,脚本就会启动并且浏览器窗口会更新结果。我使用的是 Firefox 版本 22,当脚本运行时,您可以在浏览器选项卡上看到绿色的小圆圈。无论如何,有时脚本会崩溃,您会在浏览器选项卡上看到灰色的方块。

这些时候我看到了状态,然后我更新了网络上的数据并再次从浏览器运行脚本。

我想用代码来做,我想尝试用 perl 来做。

很多工作,我知道。

我还没有尝试过,我开始思考它,我已经看到使用 mechanize 你可以调用网页。

但是我看到的第一个问题,我还没有找到明确的答案,是否可以通过代码知道浏览器窗口的状态?我的意思是,当脚本运行时,我会在 Firefox 选项卡上看到绿色圆圈,而当脚本崩溃时,我会看到灰色方块。我有办法从 perl 识别浏览器窗口状态,有更多选项卡吗?

TIA

4

1 回答 1

1

假设您的意思是服务器端脚本而不是浏览器中运行的一些 javascript,那么您要查找的术语是HTTP Status Codes。如果您的脚本崩溃,您可能会收到 500 代码。如果有效,则为 200(或 20 倍)。

如果您使用WWW::Mechanize,则该success()方法会将其转换为您可以检查的真/假。如果您想了解详细信息,也可以获得完整的HTTP::Response 。

如果您需要运行 javascript,那么您基本上必须自动化浏览器,使用 Perl 启动 Firefox(或其他)并驱动它。在这里,您需要使用WWW:Mechanize::FirefoxWWW::Selenium驱动程序及其相关服务器等。

提示 - 从简单开始,一次添加一个步骤,在每个步骤后检查结果。所以 - 获取第一页 - 你能找到你想要的链接吗?单击链接 - 它是否获取具有预期标题的页面?有相关的 Test:: 模块可以帮助解决这个问题。

于 2013-07-31T06:32:47.090 回答