2016-02-08 41 views
0

在我们的应用程序中,Heritrix被用作抓取引擎,一旦抓取工作完成,我们将手动启动一个端点从网站下载PDF文件。我们希望在爬网工作完成后立即自动执行此下载PDF任务。 HEritrix是否提供任何URI/webservice方法 - 它返回作业的状态? (或)我们是否需要创建一个投票应用程序来持续监控工作状态?我们如何知道Heritrix何时完成爬网工作?

回答

0

我不知道是否有任何选项做没有continious监视功能,但你可以用Heritrix API以获取作业状态,像水木清华

curl -v -d "action=" -k -u admin:admin --anyauth --location -H "Accept: application/xml" https://localhost:8443/engine/job/myjob 

为您提供了XML从那里你可以读取作业状态。

另一个也许更容易(但不是那么专业)的选项是检查你的作业warcs目录是否包含一个扩展名为.open的文件。否则 - 工作完成。

+0

这是正确的。 Curl提供了一种做几种动作的方法。但是,应该有另一个端点返回作业状态 - 这是任何作业框架提供的基本操作,但Heritrix除外。我尝试使用params创建https端点 - localhost:8443 /引擎createpath = testjob&action = create从POSTMAN客户端,但由于SSL证书可能无法连接?有任何想法吗? – bking007

+0

我建议尝试在命令行上卷曲。 – zuups

相关问题