首页 > 解决方案 > 如何从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-3.x

解决方案


您可以使用 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)

这将在同一目录中创建一个文件。你当然可以为你的文件命名任何东西。


推荐阅读