在Python中使用wget
我想用Python和wget下载视频文件,并把它们保存在本地。因为会有很多文件,我怎么知道一个文件下载完了,才能自动开始下载下一个呢?
谢谢。
6 个回答
15
如果你使用 os.system()
来启动一个 wget
进程,它会一直等到 wget
下载完成(或者出现错误退出)才会继续执行。所以,你可以在一个循环里反复调用 os.system('wget blah')
,直到你下载完所有文件。
另外,你也可以使用 urllib2
或 httplib
。这样你需要写一些比较复杂的代码,但性能会更好,因为你可以重用一个 HTTP 连接来下载多个文件,而不是每个文件都打开一个新的连接。
21
别这样做。应该使用urllib2
或者urlgrabber
。
22
简单来说,想要得到一个文件
import urllib.request
urllib.request.urlretrieve("http://google.com/index.html", filename="local/index.html")
如果需要的话,你可以想办法让它循环执行。