41

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

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

编辑添加一些说明性信息。

4

4 回答 4

24

DOI 手册文档的第 5.4.1 节内容协商指出,“DOI 注册机构正在为其 DOI 名称实施内容协商,特别是为用户提供增值元数据表示。” 根据http://crosscite.org的 DOI 内容协商文档的第 4 节支持的内容类型,“目前三个 DOI 注册机构已经为其 DOI 实施了内容协商:CrossRef、DataCite 和 mEDRA。” 支持的格式列表(取决于注册机构)包括 BibTeX via (这是http://doi2bib.org使用的方法)和格式化的书目条目 via (这是@anumi 建议的方法Accept: application/x-bibtexAccept: text/bibliography以上)。使用后一种标头时,必须指定style=bibtex媒体类型参数。

两种相关的 mimetype 提供了稍微不同的表示。一个请求GET http://dx.doi.org/10.1038/nrd842产生Accept: 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}}
于 2016-10-28T18:22:42.587 回答
16

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

于 2015-12-10T13:11:46.490 回答
6

看看这些人是如何实现它的: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存储库并尝试构建自己的存储库。

希望能帮助到你!

于 2016-10-28T06:51:52.640 回答
3

CrossRef有一个 API,您可以使用 API 密钥,该密钥可以从http://www.crossref.org/requestaccount/免费获得。

于 2016-06-24T00:52:34.707 回答