在python 3中使用urllib.request读取文件并下载该文件中的链接

时间:2015-09-13 00:54:38

标签: python python-3.x

我想使用urllib.request下载列表链接,并且链接在一个文件中。例如,我有一个这样的文件:

http://www.xxxxx.com/1.jpg
http://www.xxxxx.com/2.png
http://www.xxxxx.com/3.tar
http://www.xxxxx.com/4.zip

还有更多......


但是,现在我想下载它们在python 3中使用urllib.request。我知道如何阅读和下载它们:

with open('file', 'r') as f:
    for i in f.readlines()
        file = urllib.request.urlopen(i)

然后,我想我需要打开像with open('file', 'wb') as f:这样的文件,但我不知道应该使用哪个文件名。我应该制作一个列表并编写如下代码:with open(file_name_list, 'wb') as f:

1 个答案:

答案 0 :(得分:1)

你非常接近。如果要将文件命名为它们在网址中显示的名称,则使用带[ - 1]的简单拆分将非常有效。然后你将响应数据写出来。 EG。

file = urllib.request.urlopen(i)
filename = i.split('/')[-1]
with open(filename, 'wb') as out:
    out.write(file.read())

我希望这会帮助你!