首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Scopus:无法与API通信

Scopus:无法与API通信
EN

Stack Overflow用户
提问于 2021-12-19 20:35:00
回答 2查看 158关注 0票数 0
代码语言:javascript
复制
import requests

params = {
    'apiKey': 'hidden',
    'author_id': '36573126000'
}


def main():
    r = requests.get('https://api.elsevier.com/content/author', params=params)
    print(r.text)


main()

我无法与API通信,因为它正在返回以下错误:

代码语言:javascript
复制
<service-error><status><statusCode>AUTHORIZATION_ERROR</statusCode><statusText>The requestor is not authorized to access the requested view or fields of the resource</statusText></status></service-error>

问题是什么?我如何解决这个问题?

EN

回答 2

Stack Overflow用户

发布于 2022-03-25 09:04:31

有两个问题可能导致这种情况:

  1. 您的API密钥没有正确级别的权限来访问该资源
  2. 您正试图在您的机构网络之外访问该资源,并且需要一个机构令牌来启用它。

通过与Elsevier支持部门联系,可以以下列形式解决这两个问题:

https://service.elsevier.com/app/contact/supporthub/researchproductsapis/

票数 0
EN

Stack Overflow用户

发布于 2022-08-19 04:50:49

此问题通常是因为您当前的连接/IP与创建Scopus帐户的连接/IP不一样;这通常是已被授予对Scopus的访问权限的机构连接。因此,如果需要访问特定IP (机构IP)之外的Scopus,那么您需要为自己设置一个远程VPN代理,或者Inst令牌也可以工作。

为了清楚起见,请阅读下面的内容:

Scopus通过IP范围确认您是您机构的成员。对于远程工作,Scopus还可以授予InstTokens。因此,有三件事需要发生:

  1. 你现在在你的网络

  1. 您使用您的虚拟专用网

  1. 您使用InstToken

备选方案1很容易,也是最常见的。

选项2可能要求您另外设置一个代理。您可以在配置文件中这样做。

备选方案3很少见。如果您有一个InstToken,请在安装期间提供它。或者,手动将其添加到配置文件中。您还可以在任何类中通过insttoken=“XYZ”设置insttoken=。如果您拥有多个密钥,这是首选的解决方案。

请注意:这些建议都列在pyble计量学的python包装类文档中。但是,无论语言如何,访问Scopus的问题都必须是相同的,而且这些建议可能有效。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70415113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档