如何通过HTTP下载文件?

2022-09-05 01:07:08

我有一个小实用程序,我用它来按计划从网站下载MP3文件,然后构建/更新我已添加到iTunes的播客XML文件。

创建/更新 XML 文件的文本处理是用 Python 编写的。但是,我在Windows文件中使用wget来下载实际的MP3文件。我宁愿用Python编写整个实用程序。.bat

我很难找到一种在Python中实际下载文件的方法,因此为什么我诉诸于使用.wget

那么,我如何使用Python下载文件?


答案 1

还有一个,使用urlretrieve

import urllib.request
urllib.request.urlretrieve("http://www.example.com/songs/mp3.mp3", "mp3.mp3")

(对于 Python 2 的使用和import urlliburllib.urlretrieve)


答案 2

Use urllib.request.urlopen()

import urllib.request
with urllib.request.urlopen('http://www.example.com/') as f:
    html = f.read().decode('utf-8')

这是使用库的最基本方法,不包括任何错误处理。您还可以执行更复杂的操作,例如更改标头。

在Python 2上,该方法位于urllib2中:

import urllib2
response = urllib2.urlopen('http://www.example.com/')
html = response.read()

推荐