Python下载网页图片
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                Python下载网页图片
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                
                            
                            
                            Python版本是3.3.2    主要就是 urllib相對于2.x有很大變化
# -*- coding:utf-8 -*-
import urllib.request
path = "D:\\Download"
url = "http://pic2.sc.chinaz.com/files/pic/pic9/201309/apic520.jpg"
name ="D:\\download\\1.jpg"
#保存文件時候注意類型要匹配,如要保存的圖片為jpg,則打開的文件的名稱必須是jpg格式,否則會產(chǎn)生無效圖片
conn = urllib.request.urlopen(url)
f = open(name,'wb')
f.write(conn.read())
f.close()
print('Pic Saved!')  
 
 
                        
                        
                        很簡單,打開個url鏈接,然后save到某個文件夾下就可以了。
有時候不如不想輸入路徑,那就需要用os模塊來修改當前路徑
os.chdir("D:\\download") os.getcwd()這樣保存的文件就只需要名字就可以了 f = open('1.jpg','wb')這上面的url是給定的,只能下載一張圖片,如果要是批量下載,就需要用循環(huán)來判斷不同的url,下面是從其他地方看到的一個例子,就是把圖片url中的圖片名字修改,然后就可以循環(huán)保存了,不過也是先確定了某個url
來源:http://www.oschina.net/code/snippet_1016509_21961?開源中國社區(qū),自己修改的地方是提出了相同代碼def了個函數(shù)
import os import urllib.request def rename(name):if len(name) == 2:name = '0' + name + '.jpg'elif len(name) == 1:name = '00' + name + '.jpg'else:name = name + '.jpg'return nameos.chdir("D:\\download") os.getcwd() count = 1 name=str(count) name = rename(name) print(name) url = 'http://bgimg1.meimei22.com/list/2012-5-24/2/sa' + name while count < 15:a = urllib.request.urlopen(url)f = open(name, "wb")f.write(a.read())f.close()print(url + ' Saved!') count = count + 1name=str(count)name = rename(name)print(name)url = 'http://bgimg1.meimei22.com/list/2012-5-24/2/sa' + nametry:a = urllib.request.urlopen(url)passexcept (Exception) as e:print(e) else:pass else:print(url + ' not found')print(a.status) 當然也可以自己建立http連接,然后動態(tài)獲取.jpg的圖片 url = "desk.zol.com.cn"conn = http.client.HTTPConnection(url)conn.request("GET", "/dongman/")r = conn.getresponse()print (r.status, r.reason)data1 = r.read()#.decode('utf-8') #編碼根據(jù)實際情況酌情處理開始時候?qū)懙睦鲜翘崾灸繕擞嬎銠C主動拒絕, 后來才發(fā)現(xiàn)我選的函數(shù)是HTTPSConnection() ,當然會被拒絕了,這一點應(yīng)該注意,要選擇HTTPConnection()
 
 
 
 
 
 
總結(jié)
以上是生活随笔為你收集整理的Python下载网页图片的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: Jmeter验证码注册接口压力测试实战
- 下一篇: CodePlus | C# 网页所有图片
