【发布时间】:2020-03-07 04:23:37
【问题描述】:
如果我使用 urllib 加载此 url(https://www.fundingcircle.com/my-account/sell-my-loans/),我会收到 400 状态错误。
例如以下返回400错误
>>> import urllib
>>> f = urllib.urlopen("https://www.fundingcircle.com/my-account/sell-my-loans/")
>>> print f.read()
但是,如果我将 url 复制并粘贴到浏览器中,我会看到一个包含我想要查看的信息的网页。
我尝试过使用try,except,然后读取错误。但是返回的数据只是告诉我该页面不存在。例如
import urllib
try:
f = urllib.urlopen("https://www.fundingcircle.com/my-account/sell-my-loans/")
except Exception as e:
eString = e.read()
print eString
为什么 Python 不能加载页面?
【问题讨论】:
-
您是否获得了fundingcircle.com 的许可来抓取他们的网站?
-
Puciek,根据他们的 T&C,他们知道人们正在这样做,但他们还没有相关政策。
-
您尚未登录该站点+您可以更改用户代理和其他标题以模仿浏览器。您可能需要在调用之间保持状态:stackoverflow.com/questions/4414683/…
-
尝试欺骗一些标题。
-
@Puciek 代码是否违反了其他网站的服务条款已经被执行至死,而且 StackOverflow 对提问者如何处理他们的代码不承担任何责任。尽管它们可能不符合您的道德规范,但只要对它们进行研究并具有示例代码,诸如“为什么此导弹代码没有正确针对平民?”之类的问题。或“我怎样才能绕过这个速率限制?”是主题。