python - 无法使用 python 从 URL 下载文件

标签 python http python-requests

我正在尝试从以下 URL 下载文件:

https://www.cmegroup.com/content/dam/cmegroup/notices/clearing/2020/08/Chadv20-239.pdf

我尝试使用 python requests 库,但请求超时。我尝试将浏览器中的“用户代理”指定为 header ,但它仍然超时,包括当我将浏览器中的每个 header 复制到 python 脚本中时。我尝试设置allow_redirects = True,这没有帮助。我也尝试过 wget 和curl,除了实际打开浏览器、访问 URL 和下载文件之外,一切都失败了。

我想知道浏览器中的请求和我设置 header 以匹配浏览器中的请求的 python 请求之间的实际区别是什么 - 有什么方法可以使用 python 下载此文件吗?

代码片段:

import requests
requests.get("https://www.cmegroup.com/content/dam/cmegroup/notices/clearing/2020/08/Chadv20-239.pdf") # hangs

最佳答案

检查一下,它对我有用。

import requests
headers = {
    "User-Agent": 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36'}
response = requests.get(
    "https://www.cmegroup.com/content/dam/cmegroup/notices/clearing/2020/08/Chadv20-239.pdf", headers=headers)
pdf = open("Chadv20-239.pdf", 'wb')
pdf.write(response.content)
pdf.close()

关于python - 无法使用 python 从 URL 下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70361552/

相关文章:

python - 如何使用 python scapy 创建示例 IPSec 数据包

python - 我无法在 selenium 中使用 python 请求 session cookie

python - 使用 python lxml 获取 Excel xml 的父属性

python - 当从末尾索引列表时,为什么 Python 从索引 -1(而不是 0)开始?

python - 如何纯粹在 python 中实现 tcpflow 功能(跟随 tcp 流)

安全性——可以通过 HTTP GET 发送用户名和密码吗?

python - print_parts() 函数在编写程序中的工作原理 chapter2.3

json - AngularJS 获取 JSON 的 HTTP 状态 0

ios - 检查一个 URL 是否有 http ://prefix

html - Python3.5 BeautifulSoup4 从div中的 'p'获取文本