我有一个网址。当我尝试以编程方式访问它时,后端服务器失败(我不运行服务器):
import requests
r = requests.get('http://www.courts.wa.gov/index.cfm?fa=controller.managefiles&filePath=Opinions&fileName=875146.pdf')
r.status_code # 200
print r.content
当我查看内容时,它是一个错误页面,尽管状态码是 200。如果您单击该链接,它将在您的浏览器中工作——您将获得一个 PDF——这正是我在 r 中所期望的。内容。所以它在我的浏览器中工作,但在请求中失败。
为了诊断,我试图消除我的浏览器和请求库之间的差异。到目前为止,我已经:
- 禁用 Javascript
- 禁用(和删除)cookies
- 将 User-Agent 设置为每个中的相同
但是由于禁用了某些东西,我无法在请求中正常工作或在浏览器中失败。对浏览器魔术有更好了解的人可以帮助我诊断和解决这个问题吗?