citeseerx搜索api

dan*_*an3 7 api metadata citations web-scraping

有没有办法以编程方式访问CiteSeerX(例如按作者和/或标题搜索?)令人惊讶的是我找不到任何相关内容; 当然其他人也试图获得学术文章元数据而不诉诸刮痧?

编辑:请注意,CiteSeerX 支持 OAI PMH,但这似乎是一个面向数字图书馆的API,它们保持最新状态("内容传播"),并不专门支持搜索.此外,该页面上的citeseer信息非常稀少,甚至说"目前,OAI存在困难".

还有另外一个关于CiteSeerX API的问题(虽然不是特别搜索); 2个答案没有解决问题(一个是关于Mendeley,另一个软件,另一个是说OAI-PMH实现可以免费提供最小规格的扩展).

或者,任何人都可以建议以编程方式从作者/标题中获取引用的好方法吗?

dan*_*an3 5

正如其中一位评论者所建议的那样,我首先尝试了jabref:

jabref -n -f"citeseer:title :(来自)作者:(布鲁尔)"

但是jabref似乎没有意识到查询字符串需要包含冒号,因此会抛出错误.

对于搜索结果,我最终使用Python的BeautifulSoup抓取CiteSeerX结果:

url = "http://citeseerx.ist.psu.edu/search?q="
q = "title%3A%28{1}%29+author%3%28{0}%29&submit=Search&sort=cite&t=doc"
url += q.format (author_last, title.replace (" ", "+"))
soup = BeautifulSoup (urllib2.urlopen (url).read ())
result = soup.html.body ("div", id = "result_list") [0].div
title = result.h3.a.string.strip ()
authors = result ("span", "authors") [0].string
authors = authors [len ("by "):].strip ()
date = result ("span", "pubyear") [0].string.strip (", ")
Run Code Online (Sandbox Code Playgroud)

可以从结果中获取文档ID(在摘要链接URL中误导性地命名为"doi = ..."部分),然后将其传递给CiteSeerX OAI引擎以获取Dublin Core XML(例如http:// citeseerx.ist.psu.edu/oai2?verb=GetRecord&metadataPrefix=oai_dc&identifier=oai:CiteSeerX.psu:10.1.1.42.2177); 然而,XML最终包含多个dc:date元素,这使得它比scrape输出更不实用.

太糟糕了CiteSeerX尽管有所有开放档案/开放存取的言论,但人们还是会求助于拼抢.