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中range和xrange的区别
Nov 26 Python
django表单实现下拉框的示例讲解
May 29 Python
基于wxPython的GUI实现输入对话框(1)
Feb 27 Python
Python3.8中使用f-strings调试
May 22 Python
Python 3.8新特征之asyncio REPL
May 28 Python
Python实现栈和队列的简单操作方法示例
Nov 29 Python
使用Keras画神经网络准确性图教程
Jun 15 Python
keras实现多GPU或指定GPU的使用介绍
Jun 17 Python
浅谈keras中的keras.utils.to_categorical用法
Jul 02 Python
什么是Python包的循环导入
Sep 08 Python
如何使用Python自动生成报表并以邮件发送
Oct 15 Python
python神经网络学习 使用Keras进行简单分类
May 04 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结束标签的使用细节探讨及联想
2013/03/04 PHP
PHP转换文件夹下所有文件编码的实现代码
2013/06/06 PHP
ThinkPHP单字母函数(快捷方法)使用总结
2014/07/23 PHP
PHP读取txt文本文件并分页显示的方法
2015/03/11 PHP
CodeIgniter连贯操作的底层原理分析
2016/05/17 PHP
PHP array_shift()用法实例分析
2019/01/07 PHP
laravel unique验证、确认密码confirmed验证以及密码修改验证的方法
2019/10/16 PHP
通过jquery实现tab标签浏览效果
2007/02/20 Javascript
JavaScript 异步调用框架 (Part 4 - 链式调用)
2009/08/04 Javascript
jQuery 选择器理解
2010/03/16 Javascript
关于JavaScript中原型继承中的一点思考
2012/07/25 Javascript
Jquery为a标签的href赋值实现代码
2013/05/03 Javascript
display和visibility的区别示例介绍
2014/02/26 Javascript
使用jQuery设置disabled属性与移除disabled属性
2014/08/21 Javascript
jQuery截取指定长度字符串代码
2014/08/21 Javascript
浏览器兼容的JS写法总结
2016/04/27 Javascript
js重写方法的简单实现
2016/07/10 Javascript
JS库之wow.js使用方法
2017/09/14 Javascript
AngularJS实现的锚点楼层跳转功能示例
2018/01/02 Javascript
Vue 换肤的示例实践
2018/01/23 Javascript
Vue中JS动画与Velocity.js的结合使用
2019/02/13 Javascript
layui文件上传控件带更改后数据传值的方法
2019/09/23 Javascript
layui监听select变化,以及设置radio选中的方法
2019/09/24 Javascript
在vue中使用Echarts利用watch做动态数据渲染操作
2020/07/20 Javascript
JS前后端实现身份证号验证代码解析
2020/07/23 Javascript
Ant Design的可编辑Tree的实现操作
2020/10/31 Javascript
python爬虫教程之爬取百度贴吧并下载的示例
2014/03/07 Python
Python使用爬虫抓取美女图片并保存到本地的方法【测试可用】
2018/08/30 Python
python实现while循环打印星星的四种形状
2019/11/23 Python
英国定做窗帘和纺织品面料一站式商店:Dekoria
2018/08/29 全球购物
学生实习推荐信范文
2013/11/26 职场文书
政治思想表现评语
2014/05/04 职场文书
班级标语大全
2014/06/21 职场文书
2014年幼儿园学期工作总结
2014/12/05 职场文书
2014年中班下学期工作总结
2014/12/11 职场文书
SONY AN-LP1 短波有源天线放大器图
2022/04/05 无线电