Curl到Python下载GZ文件


curl --location --request GET 'https://sampleurl/sample.log.gz' 
--header 'Authorization: Bearer XXXTokenXXX' 
--data-raw '{
"enabled": true
}' | gunzip -c

我的要求是下载一个gz日志文件。以上是按预期工作的卷曲示例。如何将其添加到python代码中?

Edit:原来有一个库专门解决这个问题。这是gzip库,还有一篇关于这个主题的stackoverflow文章。


旧答案:您可以使用请求库来实现这一点,方法是将自定义标头作为字典传递,然后将响应的内容作为文件写入。

import requests
url = 'https://sampleurl/sample.log.gz'
headers = {'Authorization': 'Bearer XXXTokenXXX'}
response = requests.get(url, headers=headers)  # if the URL will redirect, include allow_redirects=True
with open('C:\path\to\save\to', 'wb') as file:
file.write(response.content)

您可能需要对其进行修改,以使其适用于您的用例(尤其是在数据原始位很重要的情况下(,但这只是一般的想法。如果你需要下载一个特别大的文件,或者想看看其他的解决方案,你可以看看这个老问题。

相关内容

  • 没有找到相关文章

最新更新