python獲取網(wǎng)頁中所有圖片并篩選指定分辨率的方法
壓測時,圖片太少,想著下載網(wǎng)頁中的圖片,然后過濾指定分辨率,但網(wǎng)頁中指定分辨率的圖片太少了(見下)
后使用格式工廠轉(zhuǎn)換圖片
import urllib.request # 導(dǎo)入urllib模塊 import re # 導(dǎo)入re模塊 import os from PIL import Image htmlurl = 'http://www.win4000.com/wallpaper_detail_134824_3.html' downloadpath = 'C:\\Users\\yaowanjun\\Desktop\\img\\' def getHTML(htmlurl): req = urllib.request.urlopen(htmlurl) buf = req.read() return buf.decode('utf-8') def downloadImg(buf): req = r'src="(.+?\.jpg)"' #正則表達(dá)式,匹配圖片格式 imgreq = re.compile(req) #編譯正則表達(dá)式 imglist = re.findall(imgreq, buf) # print(imglist) x = 0 if not os.path.isdir(downloadpath):#若沒有則創(chuàng)建 os.makedirs(downloadpath) paths = downloadpath for imgurl in imglist: f = open(paths + str(x) +'.jpg',"wb") #打開文件 req = urllib.request.urlopen(imgurl) buf = req.read() #讀出文件 f.write(buf) f.close() x = x + 1 return imglist def saveImg(): for filenumber in os.walk(downloadpath): # print(filenumber[2]) for files in filenumber[2]: # print(files) singleimg = Image.open(downloadpath + files) singleimg.close() #print(singleimg.size, singleimg.width, singleimg.height) if singleimg.size == (1920, 1080): print(singleimg) else: os.remove(downloadpath + files) buf = getHTML(htmlurl) downloadImg(buf) saveImg()
執(zhí)行結(jié)果:
指定網(wǎng)頁所有圖片
不符合指定分辨率的圖片刪除后
以上這篇python獲取網(wǎng)頁中所有圖片并篩選指定分辨率的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python GUI庫圖形界面開發(fā)之pyinstaller打包python程序?yàn)閑xe安裝文件
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之pyinstaller打包python程序?yàn)閑xe安裝文件,需要的朋友可以參考下2020-02-02python遞歸法實(shí)現(xiàn)簡易連連看小游戲
這篇文章主要為大家詳細(xì)介紹了python遞歸法實(shí)現(xiàn)簡易連連看小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-07-07純numpy卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)手寫數(shù)字識別的實(shí)踐
本文主要介紹了純numpy卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)手寫數(shù)字識別的實(shí)踐,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08python 實(shí)現(xiàn)手機(jī)自動撥打電話的方法(通話壓力測試)
今天小編就為大家分享一篇python 實(shí)現(xiàn)手機(jī)自動撥打電話的方法(通話壓力測試),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08python內(nèi)存監(jiān)控工具memory_profiler和guppy的用法詳解
這篇文章主要介紹了python內(nèi)存監(jiān)控工具memory_profiler和guppy的用法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-07-07Python和GO語言實(shí)現(xiàn)的消息摘要算法示例
這篇文章主要介紹了Python和GO語言實(shí)現(xiàn)的消息摘要算法示例,本文講解了python消息摘要示例、go語言消息摘要示例及各自的運(yùn)行效果,需要的朋友可以參考下2015-03-03