小编PyP*_*ngu的帖子

使用 Try and Catch 消除错误

这是我的第一个问题,所以如果我格式化/问错了,我提前道歉。

我正在使用 Perl 从文件中提取字符串,提交 Web 表单,并下载由网页创建的新文件。目的是让它循环运行 30,000 个文件,我估计这需要大约 8 天。我正在使用 WWW::Selenium 和 WWW::Mechanize 来执行网络自动化。我遇到的问题是,如果由于某种原因页面无法正确加载或互联网掉线一段时间,那么脚本会退出并给出一条错误消息,例如(取决于它失败的阶段):

Error requesting http://localhost:4444/selenium-server/driver/:
ERROR: Could not find element attribute: link=Download PDB File@href
Run Code Online (Sandbox Code Playgroud)

我希望脚本继续运行,进入下一轮循环,这样我就不必担心单轮循环是否会引发错误。我的研究表明使用Try::Tiny可能是最好的解决方案。目前我只使用下面的脚本try{...},它似乎可以抑制任何错误并允许脚本继续浏览文件。但是,我担心这似乎是一个非常生硬的解决方案,并且无法让我了解文件失败的原因/原因。

理想情况下,我希望将每次出现的文件名和错误消息打印到另一个文件中,然后在脚本完成后进行审查,但我很难理解如何使用catch{...}它,或者这是否是正确的解决方案。

Error requesting http://localhost:4444/selenium-server/driver/:
ERROR: Could not find element attribute: link=Download PDB File@href
Run Code Online (Sandbox Code Playgroud)

perl

1
推荐指数
1
解决办法
107
查看次数

标签 统计

perl ×1