获取图片所有像素点 html,python获取图片分辨率的方法

8de660fc2e8e2beed1147675bc22ef3a.png

关于python如何获取网页中所有图片并筛选指定分辨率

17小时36分钟前回答

11882ece2236f58bae4055f57ba72cba.png

关于python如何获取网页中所有图片并筛选指定分辨率

压测时,图片太少,想着下载网页中的图片,然后过滤指定分辨率,但网页中指定分辨率的图片太少了(见下)

后使用格式工厂转换图片

import urllib.request # 导入urllib模块

import re # 导入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)"' #正则表达式,匹配图片格式

imgreq = re.compile(req) #编译正则表达式

imglist = re.findall(imgreq, buf)

# print(imglist)

x = 0

if not os.path.isdir(downloadpath):#若没有则创建

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()

执行结果:

指定网页所有图片

ac7a4327fe9add9243a09422aa0bfec8.png

不符合指定分辨率的图片删除后

5ac65a70cd417432b7bd59b75aaf6798.png

以上这篇python获取网页中所有图片并筛选指定分辨率的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持码农之家。

展开阅读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值