问答详情
源自:4-2 python正则表达式练习

为什么我保存的图片只有一张?

# -*- coding: UTF-8 -*-
import urllib2
import re

req = urllib2.urlopen('http://www.imooc.com/course/list?c=python')
buf =req.read()
listurl = re.findall(r'http://img.+.jpg',buf)
print listurl

i = 0
for url in listurl:
   file = open('D:/python/i'+'.jpg','w')
   req = urllib2.urlopen(url)
   buf = req.read()
   file.write(buf)
   i += 1


提问者:风月v 2016-07-31 15:14

个回答

  • 慕斯5482594
    2016-10-12 17:31:03

     file = open('D:/python/i'+'.jpg','w')

    你这样写都定义好它的名字了,  输出 i.jpg   循环len(listurl)这么多次,一次又一次的覆盖。

    你这样写,i = 0  和 i=+1 都没用上。

    正常:file = open('D:/python/'+str(i)+'.jpg','w')


  • qq_婧丫头_03706444
    2016-08-15 10:10:26

     file = open('D:/python/i'+'.jpg','w')这里文件名总是‘d:/python/i.jpg'后边每次打开这个文件都会先清空,然后再写,具体可以去学一下python文件处理

  • 风月v
    2016-07-31 15:20:42

    file = open('D:/python/'+str(i)+'.jpg','w')