从DOI获取元数据

时间:2012-05-08 21:47:37

标签: metadata bibtex doi

digital object identifier(DOI)是一个全球唯一的字符串,用于标识电子文档(例如,学术文章的PDF)。它本质上提供了一种创建文档永久链接的方法(例如,http://dx.doi.org/10.1145/146585.146609)。

是否有Web服务(或任何其他系统)从给定的DOI获取文档的元数据(最好是BibTeX形式)?

编辑添加一些说明信息。

4 个答案:

答案 0 :(得分:13)

curl -LH "Accept: text/bibliography; style=bibtex" http://dx.doi.org/10.1038/nrd842

答案 1 :(得分:9)

DOI手册文件中的Section 5.4.1 Content Negotiation声明:“DOI注册机构正在为其DOI号码实施内容协商,特别是为用户提供增值元数据表示。”根据{{​​3}}的DOI内容协商文档的Section 4 Supported Content Types,“目前三家DOI注册机构已经为其DOI实施了内容协商:CrossRef,DataCite和mEDRA。”支持的格式列表(取决于注册机构)包括通过Accept: application/x-bibtex的BibTeX(这是http://crosscite.org使用的方法)和通过Accept: text/bibliography格式化的参考书目条目(这是{{ 3}}以上)。使用后一个标头时,您必须指定style=bibtex媒体类型参数。

两个相关的mimetypes提供略有不同的表示。使用GET http://dx.doi.org/10.1038/nrd842Accept: application/x-bibtex发出请求会产生回复

@article{Atkins_2002,
    doi = {10.1038/nrd842},
    url = {http://dx.doi.org/10.1038/nrd842},
    year = 2002,
    month = {jul},
    publisher = {Springer Nature},
    volume = {1},
    number = {7},
    pages = {491--492},
    author = {Joshua H. Atkins and Leland J. Gershell},
    title = {From the analyst{\textquotesingle}s couch: Selective anticancer drugs},
    journal = {Nature Reviews Drug Discovery}
}

Accept: text/bibliography; style=bibtex

@article{Atkins_2002, title={From the analyst’s couch: Selective anticancer drugs}, volume={1}, ISSN={1474-1784}, url={http://dx.doi.org/10.1038/nrd842}, DOI={10.1038/nrd842}, number={7}, journal={Nature Reviews Drug Discovery}, publisher={Springer Nature}, author={Atkins, Joshua H. and Gershell, Leland J.}, year={2002}, month={Jul}, pages={491–492}}

答案 2 :(得分:4)

看看这些人是如何实现它的:www.doi2bib.org。

我在其中一个项目中做了什么:

  • 查看了他们的url请求结构:http://www.doi2bib.org/doi2bib + ?id= + {your doi here}
  • 然后使用他们的...... API获取数据(例如http://www.doi2bib.org/doi2bib?id=10.1016%2Fj.actpsy.2016.09.007),响应为:
    • @article{Leinen_2016, doi = {10.1016/j.actpsy.2016.09.007}, url = {http://dx.doi.org/10.1016/j.actpsy.2016.09.007}, year = 2016, month = {nov}, publisher = {Elsevier {BV}}, volume = {171}, pages = {36--46}, author = {Peter Leinen and Stefan Panzer and Charles H. Shea}, title = {Hemispheric asymmetries of a motor memory in a recognition test after learning a movement sequence}, journal = {Acta Psychologica} }
  • 然后你可以按照你想要的方式解析它。

这帮助我得到了我需要的东西。但是,最好的方法是查看他们的GitHub存储库并尝试构建自己的存储库。

希望它有所帮助!

答案 3 :(得分:1)

CrossRef has an API,您可以使用可以从http://www.crossref.org/requestaccount/免费获得的API密钥。