python-3.x - 如何从python中的超链接下载zip文件
问题描述
有网址的网站
https://www.fda.gov/drugs/drug-approvals-and-databases/drugsfda-data-files
并且有一个可下载的文件
Drugs@FDA 下载文件 (ZIP - 3.2MB) 作为网站内容中的超链接。
我已经尝试了如下代码
import urllib.request
import gzip
url = 'https://www.fda.gov/media/89850/download'
with urllib.request.urlopen(url) as response:
with gzip.GzipFile(fileobj=response) as uncompressed:
file_header = uncompressed.read()
但我收到错误:不是压缩文件
解决方案
您可以使用 python requests 库从 url 获取数据,然后将内容写入文件。
import requests
with open('my_zip_file.zip', 'wb') as my_zip_file:
data = requests.get('https://www.fda.gov/media/89850/download')
my_zip_file.write(data.content)
这将在同一目录中创建一个文件。你当然可以为你的文件命名任何东西。
推荐阅读
- android - Pixel 3 XL 上的 AOSP Automotive,更改默认屏幕方向
- javascript - 如何在 React JS 应用程序中使用 Google Analytics 代码?
- twig - 获取产品的所有照片
- fonts - 自托管网络字体:如何阻止有人窃取它们?
- javascript - 将对象数组转换并过滤为一个对象
- mysql - Kubernetes:无法连接到“xxxx”(110)上的 MySQL 服务器 - 网络策略
- r - R - parse_date_time() 的一周间隔,自 2018 年以来返回错误的星期一
- scala - 在 Scala 中返回隐式函数
- php - 如果在字符串中找到图像标签,如何停止函数
- c - 当我添加了 4 个元素时,为什么数组的长度是 3?