问题标签 [doi]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - 从 CrossRef 获取作者姓名(从 JSON 中获取文本)
我正在尝试通过使用带有 curl 的 CrossRef API来获取本文的作者姓名。
当然,我得到一个 JSON 作为响应,但需要纯文本来进行进一步的 bash 处理:
我想过使用 jq,但不知道如何获得:
“法比奥法奇内利,安德烈亚斯 PM 韦伯”
你知道一个解决方案(不能是jq)吗?
mysql - 用于存储未知且技术上无限长度的数据的数据库字段长度?
我必须将 DOI 存储在 MySQL 数据库中。手册说:
DOI 号的长度没有限制。
到目前为止,我当前数据中 DOI 的最大长度为 78 个字符。为了不浪费存储空间和安全起见,您会推荐哪种字段长度?一般来说:
考虑到空间和事务的效率,您如何处理不知道必须存储在数据库中的输入数据的最大长度的问题?
编辑
有这两个(简化的)表document
,并且topic
具有一对多的关系:
我必须运行以下(简化的)统计查询,返回每个文档引用的主题类别的总值(如果有任何引用):
使用的字符集是utf_8_general_ci
.
python - CrossRef API 追踪 DOI 引文
我正在使用该habanero
库来检索给定 DOI 的引文信息。在尝试检索有关引用给定 DOI 的作品的信息时,我遇到了障碍。例如,
会给我引用 DOI 的作品数量。不幸的是,我感兴趣的 DOI 与数据集相关联,因此这些计数几乎总是为 1。我真正需要的是计算引用 DOI 的工作的引用。例如,像这样:
我一直在研究 CrossRef 文档,但找不到任何可以帮助我实现这一目标的东西。
有没有人解决过类似的问题?
http - 我如何提供哪些内容类型(用于 HTTP 内容协商)?
解决 DOI 后得到的结果取决于内容协商。我正在查看https://citation.crosscite.org/docs.html#sec-3 ,我看到不同的服务提供不同的内容类型。
对于一个特定的 URL,我想知道它可以给我的所有内容类型。其中一些可能比我所知道的更有用(即我不想提前写一个偏好列表)。
例如:
https://doi.org/10.5061/dryad.1r170
我想也许 OPTIONS 是这样做的方法
但这并没有带来什么有趣的东西,只是关于允许的请求方法。
curl - Datacite - 您必须先注册元数据!HTTP/1.1 412 前提条件失败
迁移我们的存储库后,我想重新注册现有的 dois 以使它们重定向到我们的新存储库。不幸的是,datacite 文档对我不起作用。这是文档中的示例调用:
我根据我的设置更改了servern
, doi
和部分。url
所有 DOI 都已注册并与元数据相关联。但我只有
如果 DOI 未与元数据流关联,通常会发生这种情况。但就我而言,DOI 有 metadata。
通过文档上的示例工作。这不会发生在测试实例上,它只会发生在生产中。
有没有办法使用 curl 在 datacite 上重新注册 DOI 重定向?
python - Parse Wiley 在线图书馆
我想用 Python 和 BeautifulSoup从Ullmann 的工业化学百科全书中提取所有章节的 DOI。
所以从
我想获得“气凝胶”和“/doi/full/10.1002/14356007.c01_c01.pub2”
更大的样本:
对于我尝试过的标题:
对于我尝试过的 DOI:
但可悲的是,我是一个十足的菜鸟(傻瓜),它不起作用。
网址是https://onlinelibrary.wiley.com/browse/book/10.1002/14356007/title?startPage= {1..59}
谢谢你的帮助。
php - 从 Web 服务解析分页的 json
我正在尝试解析从远程 Web 服务生成的大量 JSON 数据。生成的输出跨 500 个 URI 进行分页,每个 URI 包含 100 个 JSON 对象。我需要将每个 JSON 对象中的属性,即 DOI(数字对象标识符)与从本地数据库中获取的相应字段进行匹配,然后更新记录。
我遇到的问题是控制我的循环结构以寻找匹配的 JSON DOI,同时确保所有数据都已被解析。
如您所见,我尝试使用 break 和 continue 语句的组合,但我无法“移动”到第一个 URI 之外。
后来我引入了一个标志变量来帮助控制循环而不影响。
什么是保证解析所有 URI 上的每个 JSON 对象并且仅当获取的记录的 DOI 字段与传入 JSON 数据的 DOI 属性匹配时才在我的数据库上执行 CRUD 操作的最佳方法是什么?