citeseerx поиск API
Есть ли способ получить к CiteSeerX программный доступ (например, поиск по автору и / или названию?) Удивительно, но я не могу найти что-либо релевантное; неужели другие тоже пытаются получить метаданные научной статьи, не прибегая к очистке?
РЕДАКТИРОВАТЬ: обратите внимание, что CiteSeerX поддерживает OAI PMH, но, похоже, это API, ориентированный на цифровые библиотеки, поддерживающие актуальность друг с другом ("распространение контента"), и не поддерживает поиск. Более того, информация о citeseer на этой странице очень скудна и даже гласит: "В настоящее время существуют трудности с OAI".
Есть еще один вопрос о API CiteSeerX (хотя это не поиск); 2 ответа не решают проблему (один говорит о Mendeley, другом программном обеспечении, а другой говорит, что реализации OAI-PMH могут предлагать расширения для минимальной спецификации).
В качестве альтернативы, может кто-нибудь предложить хороший способ получения цитат из авторов / названий программно?
1 ответ
Как предложил один из комментаторов, я сначала попробовал jabref:
jabref -n -f "citeseer: title: (уроки от) автор:(Brewer)"
Однако jabref, похоже, не понимает, что строка запроса должна содержать двоеточия и поэтому выдает ошибку.
Для результатов поиска я в итоге удалил результаты CiteSeerX с помощью Python BeautifulSoup:
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 (", ")
Можно получить идентификатор документа из результатов (ошибочно названный раздел "doi=..." в URL-адресе сводной ссылки), а затем передать его в механизм OAI CiteSeerX для получения 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, что делает его менее полезным, чем вывод соскоба.
Жаль, что CiteSeerX заставляет людей прибегать к чистке, несмотря на всю риторику открытых архивов / открытого доступа.