python获取网页中所有图片并筛选指定分辨率的方法


Posted in Python onMarch 31, 2018

压测时,图片太少,想着下载网页中的图片,然后过滤指定分辨率,但网页中指定分辨率的图片太少了(见下)
后使用格式工厂转换图片

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

执行结果:

指定网页所有图片

python获取网页中所有图片并筛选指定分辨率的方法

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

python获取网页中所有图片并筛选指定分辨率的方法

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

Python 相关文章推荐
python通过scapy获取局域网所有主机mac地址示例
May 04 Python
Python实现 多进程导入CSV数据到 MySQL
Feb 26 Python
Python 12306抢火车票脚本
Feb 07 Python
Python for循环中的陷阱详解
Jul 13 Python
Python列表(List)知识点总结
Feb 18 Python
Python3 实现串口两进程同时读写
Jun 12 Python
通过python改变图片特定区域的颜色详解
Jul 15 Python
使用tensorflow实现矩阵分解方式
Feb 07 Python
Python图像处理库PIL的ImageFilter模块使用介绍
Feb 26 Python
Python使用sys.exc_info()方法获取异常信息
Jul 23 Python
python中的对数log函数表示及用法
Dec 09 Python
python 爬取腾讯视频评论的实现步骤
Feb 18 Python
python如何将图片转换为字符图片
Aug 19 #Python
Pyinstaller将py打包成exe的实例
Mar 31 #Python
Python pymongo模块用法示例
Mar 31 #Python
Python向MySQL批量插数据的实例讲解
Mar 31 #Python
Python将图片转换为字符画的方法
Jun 16 #Python
Python实现从log日志中提取ip的方法【正则提取】
Mar 31 #Python
Python+OpenCV实现车牌字符分割和识别
Mar 31 #Python
You might like
PHP封装CURL扩展类实例
2015/07/28 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
2016/07/15 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
php获取微信openid方法总结
2019/10/10 PHP
js实现连续英文字符自动换行兼容ie6 ie7和firefox
2013/09/06 Javascript
jQuery中die()方法用法实例
2015/01/19 Javascript
JavaScript 限制文本框不可输入英文单双引号的方法
2016/12/20 Javascript
详解JavaScript按概率随机生成事件
2017/08/02 Javascript
Vue开发之watch监听数组、对象、变量操作分析
2019/04/25 Javascript
微信小程序如何调用新闻接口实现列表循环
2019/07/02 Javascript
layui的布局和表格的渲染以及动态生成表格的方法
2019/09/18 Javascript
vue 监听 Treeselect 选择项的改变操作
2020/08/31 Javascript
[33:09]完美世界DOTA2联赛循环赛 Forest vs DM BO2第二场 10.29
2020/10/29 DOTA
详解Python中with语句的用法
2015/04/15 Python
Python数据操作方法封装类实例
2017/06/23 Python
Python递归实现汉诺塔算法示例
2018/03/19 Python
Python面向对象程序设计之类的定义与继承简单示例
2019/03/18 Python
解决tensorboard多个events文件显示紊乱的问题
2020/02/15 Python
Python自动重新加载模块详解(autoreload module)
2020/04/01 Python
opencv-python的RGB与BGR互转方式
2020/06/02 Python
使用html2canvas将页面转成图并使用用canvas2image下载
2019/04/04 HTML / CSS
材料加工硕士生求职信
2013/10/10 职场文书
大学生专业个人学习的自我评价
2013/10/26 职场文书
教师自荐信
2013/12/10 职场文书
公司部门司机岗位职责
2014/01/03 职场文书
师德师风承诺书
2014/05/23 职场文书
建筑工地宣传标语
2014/06/18 职场文书
竞选班干部演讲稿600字
2014/08/20 职场文书
政法干警核心价值观心得体会
2014/09/11 职场文书
售房协议书范本2014
2014/10/23 职场文书
舌尖上的中国观后感
2015/06/02 职场文书
2015国庆66周年宣传语
2015/07/14 职场文书
区域销售大会开幕词
2016/03/04 职场文书
退休劳动合同怎么写?
2019/10/25 职场文书
Python的这些库,你知道多少?
2021/06/09 Python