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 相关文章推荐
Windows系统下安装Python的SSH模块教程
Feb 05 Python
在Python中的Django框架中进行字符串翻译
Jul 27 Python
python 3利用BeautifulSoup抓取div标签的方法示例
May 28 Python
Python实现的文本编辑器功能示例
Jun 30 Python
Python机器学习logistic回归代码解析
Jan 17 Python
python编辑用户登入界面的实现代码
Jul 16 Python
python 产生token及token验证的方法
Dec 26 Python
python五子棋游戏的设计与实现
Jun 18 Python
python处理RSTP视频流过程解析
Jan 11 Python
pycharm如何使用anaconda中的各种包(操作步骤)
Jul 31 Python
python对输出的奇数偶数排序实例代码
Dec 04 Python
Python 文本滚动播放器的实现代码
Apr 25 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
BBS(php & mysql)完整版(八)
2006/10/09 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装最快的解决办法
2010/08/01 PHP
PHP中PDO的错误处理
2011/09/04 PHP
phpQuery让php处理html代码像jQuery一样方便
2015/01/06 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
让低版本浏览器支持input的placeholder属性(js方法)
2013/04/03 Javascript
关于JavaScript中string 的replace
2013/04/12 Javascript
js 遍历json返回的map内容示例代码
2013/10/29 Javascript
分享33个jQuery与CSS3实现的绚丽鼠标悬停效果
2014/12/15 Javascript
AngularJS页面访问时出现页面闪烁问题的解决
2016/03/06 Javascript
jquery easyui datagrid实现增加,修改,删除方法总结
2016/05/25 Javascript
JQuery遍历元素的后代和同胞实现方法
2016/09/18 Javascript
浅谈jQuery操作类数组的工具方法
2016/12/23 Javascript
Element-ui tree组件自定义节点使用方法代码详解
2018/09/17 Javascript
Koa代理Http请求的示例代码
2018/10/10 Javascript
抖音上用记事本编写爱心小程序教程
2019/04/17 Javascript
原生JS实现顶部导航栏显示按钮+搜索框功能
2019/12/25 Javascript
Vue中keep-alive的两种应用方式
2020/07/15 Javascript
Python中实现字符串类型与字典类型相互转换的方法
2014/08/18 Python
一步步教你用Python实现2048小游戏
2017/01/19 Python
Python3简单实现串口通信的方法
2019/06/12 Python
TensorFlow MNIST手写数据集的实现方法
2020/02/05 Python
使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示
2020/05/16 Python
python中np是做什么的
2020/07/21 Python
Django contrib auth authenticate函数源码解析
2020/11/12 Python
利用HTML5实现使用按钮控制背景音乐开关
2015/09/21 HTML / CSS
香港礼品网站:GiftU eshop
2017/09/01 全球购物
类成员函数的重载、覆盖和隐藏区别
2016/01/27 面试题
大学新生军训个人的自我评价
2013/10/03 职场文书
绘画专业自荐信
2014/07/04 职场文书
退休党员个人对照检查材料思想汇报
2014/09/29 职场文书
离婚财产分隔协议书
2014/10/23 职场文书
CSS3 制作的书本翻页特效
2021/04/13 HTML / CSS
前端vue+express实现文件的上传下载示例
2022/02/18 Vue.js
Go语言的协程上下文的几个方法和用法
2022/04/11 Golang
CentOS7环境下MySQL8常用命令小结
2022/06/10 Servers