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中的二进制位运算符
May 13 Python
python 遍历字符串(含汉字)实例详解
Apr 04 Python
Pycharm学习教程(3) 代码运行调试
May 03 Python
Python如何快速上手? 快速掌握一门新语言的方法
Nov 14 Python
tensorflow TFRecords文件的生成和读取的方法
Feb 06 Python
Pycharm 设置默认头的图文教程
Jan 17 Python
如何使用python实现模拟鼠标点击
Jan 06 Python
python读取ini配置的类封装代码实例
Jan 08 Python
Django 批量插入数据的实现方法
Jan 12 Python
Python requests模块基础使用方法实例及高级应用(自动登陆,抓取网页源码)实例详解
Feb 14 Python
Python爬虫之爬取淘女郎照片示例详解
Jul 28 Python
Python内置的数据类型及使用方法
Apr 13 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 面向对象 PHP5 中的常量
2010/05/05 PHP
php中让上传的文件大小在上传前就受限制的两种解决方法
2013/06/24 PHP
10个简化PHP开发的工具
2014/12/25 PHP
PHP 极验验证码实例讲解
2016/09/29 PHP
php cookie用户登录的详解及实例代码
2017/01/03 PHP
PHP正则+Snoopy抓取框架实现的抓取淘宝店信誉功能实例
2017/05/17 PHP
stream.js 一个很小、完全独立的Javascript类库
2011/10/28 Javascript
简介JavaScript中的setTime()方法的使用
2015/06/11 Javascript
Node.js connect ECONNREFUSED错误解决办法
2016/09/15 Javascript
vue深入解析之render function code详解
2017/07/18 Javascript
利用Ionic2 + angular4实现一个地区选择组件
2017/07/27 Javascript
详解使用create-react-app快速构建React开发环境
2018/05/16 Javascript
JS实现数组的增删改查操作示例
2018/08/29 Javascript
图片文字识别(OCR)插件Ocrad.js教程
2018/11/26 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
2019/02/01 Javascript
JS实现购物车基本功能
2020/11/08 Javascript
JavaScript中layim之整合右键菜单的示例代码
2021/02/06 Javascript
Python实现遍历数据库并获取key的值
2015/05/17 Python
python生成验证码图片代码分享
2016/01/28 Python
python把数组中的数字每行打印3个并保存在文档中的方法
2018/07/17 Python
基于python实现地址和经纬度转换
2020/05/19 Python
详解python算法常用技巧与内置库
2020/10/17 Python
HTML5 Canvas旋转动画的2个代码例子(一个旋转的太极图效果)
2014/04/10 HTML / CSS
速卖通欧盟:Aliexpress EU
2020/08/19 全球购物
汽车销售求职自荐信
2013/10/01 职场文书
党员年终民主评议的自我评价
2013/11/05 职场文书
会计应届生的自荐信
2013/12/13 职场文书
幼儿园保育员辞职信
2014/01/12 职场文书
教师评语大全
2014/04/28 职场文书
校园文明标语
2014/06/13 职场文书
企业优秀团员事迹材料
2014/08/20 职场文书
工作失误检讨书(3篇)
2014/10/11 职场文书
汽车销售助理岗位职责
2015/04/14 职场文书
公司开业致辞
2015/07/29 职场文书
《扇形统计图》教学反思
2016/02/17 职场文书
Python 文本滚动播放器的实现代码
2021/04/25 Python