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访问纯真IP数据库的代码
May 19 Python
Python计算程序运行时间的方法
Dec 13 Python
Python网页解析利器BeautifulSoup安装使用介绍
Mar 17 Python
python删除列表中重复记录的方法
Apr 28 Python
PyQt5每天必学之单行文本框
Apr 19 Python
Python使用Flask-SQLAlchemy连接数据库操作示例
Aug 31 Python
python使用pdfminer解析pdf文件的方法示例
Dec 20 Python
python 使用raw socket进行TCP SYN扫描实例
May 05 Python
python json.dumps() json.dump()的区别详解
Jul 14 Python
详解Python的爬虫框架 Scrapy
Aug 03 Python
还在手动盖楼抽奖?教你用Python实现自动评论盖楼抽奖(一)
Jun 07 Python
python开发人人对战的五子棋小游戏
May 02 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 操作文件的一些FAQ总结
2009/02/12 PHP
php对大文件进行读取操作的实现代码
2013/01/23 PHP
PHP无限分类(树形类)的深入分析
2013/06/02 PHP
WordPress中用于检索模版的相关PHP函数使用解析
2015/12/15 PHP
Laravel 创建指定表 migrate的例子
2019/10/09 PHP
更正确的asp冒泡排序
2007/05/24 Javascript
JavaScript 全面解析各种浏览器网页中的JS 执行顺序
2009/02/17 Javascript
jquery插件如何使用 jQuery操作Cookie插件使用介绍
2012/12/15 Javascript
jQuery学习笔记之jQuery动画效果
2013/09/09 Javascript
浅谈Javascript中的Function与Object
2015/01/26 Javascript
基于Jquery实现万圣节快乐特效
2015/11/01 Javascript
js实现小窗口拖拽效果
2016/12/03 Javascript
微信小程序实现页面跳转传值的方法
2017/10/12 Javascript
Bootstrap 3多级下拉菜单实例
2017/11/23 Javascript
微信小程序实现图片上传、删除和预览功能的方法
2017/12/18 Javascript
详解用vue2.x版本+adminLTE开源框架搭建后台应用模版
2019/03/15 Javascript
jQuery实现带3D切割效果的轮播图功能示例【附源码下载】
2019/04/04 jQuery
Vue使用NProgress的操作过程解析
2019/10/10 Javascript
用Nodejs实现在终端中炒股的实现
2020/10/18 NodeJs
vant 时间选择器--开始时间和结束时间实例
2020/11/04 Javascript
Python打印“菱形”星号代码方法
2018/02/05 Python
对Pandas MultiIndex(多重索引)详解
2018/11/16 Python
Python生成器的使用方法和示例代码
2019/03/04 Python
Python测试模块doctest使用解析
2019/08/10 Python
Python缓存技术实现过程详解
2019/09/25 Python
使用keras2.0 将Merge层改为函数式
2020/05/23 Python
详解CSS3的perspective属性设置3D变换距离的方法
2016/05/23 HTML / CSS
原装进口全世界:天猫国际
2016/08/03 全球购物
美国在线宠物用品商店:Entirely Pets
2017/01/01 全球购物
巴西最大的在线约会网站:ParPerfeito
2018/07/11 全球购物
学年自我鉴定范文
2013/10/01 职场文书
探矿工程师自荐信
2014/01/24 职场文书
入股协议书
2014/04/14 职场文书
高考标语大全
2014/06/05 职场文书
2014年教研组工作总结
2014/11/26 职场文书
2015年度物业公司工作总结
2015/04/27 职场文书