我是一名Perl程序员,有一些很好的脚本可以使用cURL获取HTTP页面(来自文本文件列表的URL)并将它们保存到文件夹中。
然而,要获得的页数是数千万。有时脚本在170,000号上失败,我必须再次手动启动脚本。它会自动读取URL并查看是否有下载的页面并跳过。但是,有几十万,它仍然需要几个小时才能跳回到它停止的地方。显然,这最终不会成功。
所以,我认为解决方案是构建一个Visual Basic程序,打开命令提示,收集控制台输出,并在最后一个错过的号码时根据需要重新启动脚本。
我从未制作过VB程序,但我听说它是蛋糕。我可以得到一个外行解释如何执行此操作(打开提示,发送命令,捕获输出,重新启动提示)?或者有更好的方法来解决我的问题吗?
答案 0 :(得分:3)
改变你的工作方式。维护页面队列以在脚本外部进行检查。当您选中一个时,将其标记为已查看并记录您选中它的日期。
重新启动脚本时,将队列重置为仅在时间窗口外标记为已检查的页面。
数据库可能会派上用场。
修复问题,你不必在问题上构建大量垃圾。
您说有时您无法创建目录。这应该是一个容易捕获的问题。但是,这并不意味着您可以在脚本中忽略它。没有错误是可以恢复的,但至少你可以记录问题,以便你可以调查。你是如何创建目录的?
答案 1 :(得分:1)
我的建议是忘记VBA和cURL,并使用LWP或Mech perl模块来获取您的页面。然后,您可以在脚本中正常处理错误,而无需使用VB。