Java PubMed阻止url请求

时间:2013-12-13 17:16:37

标签: java block http-request pubmed

我有一些代码可以访问PubMed中的文章并从每个XML中解析一些信息。该程序在我的计算机上运行良好,但需要很长时间才能完成。因此,当我在unix机器上运行它时,特别是对于这种事情,我所做的每个请求都被阻止了。在机器将其视为病毒之前,每分钟可以制作的数量是有限的,但这不是问题,因为所有请求都被阻止。我检查过,这只发生在PubMed网站上的请求。

提前致谢

编辑:我使用jsoup进行连接。使用我的程序中的ProcessBuilder运行wget可以正常运行而不会被阻止,但效率会成为一个问题,因为wget的输出只能用while(br.readline() != null)读取,并且这个广告需要大量的运行时间。

1 个答案:

答案 0 :(得分:1)

您可以尝试通过专用于检索发布数据的其他API进行连接,而不是访问pubmed网页,例如RESTful Web Service:http://europepmc.org/RestfulWebService。 它允许您以xml格式获取所需的所有数据,我认为查询数量没有限制。

例如,如果您想通过pubmed_id=9481671获取有关文章的所有信息,则需要访问网页:http://www.ebi.ac.uk/europepmc/webservices/rest/search/resulttype=core&query=ext_id:9481671