python请求上的sci-hub响应403错误?

Posted

技术标签:

【中文标题】python请求上的sci-hub响应403错误?【英文标题】:sci-hub response 403 error on python request? 【发布时间】:2022-01-20 19:49:11 【问题描述】:

我通过 python 上的请求创建了对 sci-hub.se 的请求。 服务器响应 403 错误。实际上,机器人请求在部署后成功。但在 1-4 小时后,请求出现 403 错误。 我使用这个链接:https://sci-hub.se/https://www.sciencedirect.com/science/article/pii/S2211285519301648 你能帮我解决一下吗?

这是我的代码:

html_text = requests.request('GET', sci_url)```

My bot located on heroku. Telegram bot.

【问题讨论】:

请添加更多上下文和确切的错误堆栈 禁止您访问该 URL。这就是 HTTP 403 告诉你的。您可能需要提供一些特定的 HTTP 标头,这些标头可能包含身份验证信息(用户名/密码等)。除非它是私人的,否则将完整的 URL 添加到您的问题中,毫无疑问有人会弄清楚 是的。我试图从 sci-hub 获取下载链接。像这样使用:sci-hub.se/https://www.sciencedirect.com/science/article/pii/…. 请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。 【参考方案1】:

我不确定您的网址是否有效。但是,这可能会给你你需要的东西:

import requests

with requests.Session() as session:
    headers = 'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Version/10.0 Mobile/14E304 Safari/602.1'
    (r := session.get('https://www.sciencedirect.com/science/article/abs/pii/S2211285519301648', headers=headers)).raise_for_status()
    print(r.text)

【讨论】:

以上是关于python请求上的sci-hub响应403错误?的主要内容,如果未能解决你的问题,请参考以下文章

Ajax Post Laravel 共享主机上的 403 错误

Python请求响应403被禁止

从 IIS 上的服务堆栈提供 swf 文件时出现 403 错误

Windows 7上的python wsgi

CORS 错误和带有 JWT 令牌的 403 响应

403 禁止响应 JSONP 请求