python获取网页中所有图片并筛选指定分辨率的方法
作者:YY_姚 发布时间:2021-07-28 04:57:23
标签:python,图片,分辨率
压测时,图片太少,想着下载网页中的图片,然后过滤指定分辨率,但网页中指定分辨率的图片太少了(见下)
后使用格式工厂转换图片
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()
执行结果:
指定网页所有图片
不符合指定分辨率的图片删除后
来源:https://blog.csdn.net/weixin_38208401/article/details/78324469


猜你喜欢
- 前言:由于公司使用钉钉,之前告警都是使用邮箱,但是这种协同效率比较低,所以调用钉钉机器人来实现实时告警。创建机器人:创建钉钉群,然后添加群机
- 我听说在ASP里,可以不用DSN来连接EXCEL,请问如何实现?确实ASP提供了替代DSN的其他方法,甚至可以在运行时建立连接看看下面的范例
- 导语暗恋让人受尽委屈!一开始,你是我的秘密,我怕你知道,又怕你不知道,又怕你知道装作不知道!这大概就是暗恋的感受吧,可若是双向奔赴,那简更是
- while循环:while expression: suite_to_repeatwhile 条件: 语
- 1. mmap内存映射文件建立一个文件的内存映射将使用操作系统虚拟内存来直接访问文件系统上的数据,而不是使用常规的I/O函数访问数据。内存映
- 本文实例讲述了GO语言实现列出目录和遍历目录的方法。分享给大家供大家参考。具体如下:GO语言获取目录列表用 ioutil.ReadDir()
- python join 和 split方法简单的说是:join用来连接字符串,split恰好相反,拆分字符串的。.join()join将 容
- 主键的生成方式主要有三种: 一. 数据库自动生成 二. GUID 三. 开发创建 严格讲这三种产生方式有一定的交叉点,其定位方式将在下面进行
- 描述Python 字典(Dictionary) copy() 函数返回一个字典的浅复制。语法copy()方法语法:dict.copy()返回
- 应用场景在嵌入式开发中,常常需要将一个binary文件分割成多个文件,或者将一个binary的某块区域抓成一个单独文件。本篇blog以pyt
- python烟花代码如下# -*- coding: utf-8 -*-import math, random,timeimport thre
- 在使用"get"时,抓取的页面最后加上编码类型 <% 服务器端:servletactioncontext.getr
- 案例故事:大部分带彩色屏幕的终端设备,不管是手机,车机,电视等等,都需要涉及图片的显示,作为一名专业的多媒体测试人员,我们需要一堆的规范化标
- 本文实例为大家分享了Python代码实现双链表的具体代码,供大家参考,具体内容如下双链表的每个节点有两个指针: 一个指向后一个节点,另一个指
- 本系列不会对python语法,理论作详细说明;所以不是一个学习教材;而这里只是我一个学习python的某些专题的总结。1. random()
- 我们在使用Golang时,不可避免会遇到异常情况的处理,与Java、Python等语言不同的是,Go中并没有try...catch...这样
- 配置要求:IIS(win2000 server 自带)、Java 2 SDK 1.4.2 (或更高版本)、Tomcat Web Server
- pytorch中我们有时候可能需要设定某些变量是参与训练的,这时候就需要查看哪些是可训练参数,以确定这些设置是成功的。pytorch中mod
- 本文总结了组件Bootstrap Select2在一些实际项目中的用法,分享给大家,有需要的朋友可以借鉴一下,少走些弯路,具体内容如下效果图
- MySQL中union和order by是可以一起使用的,但是在使用中需要注意一些小问题,下面通过例子来说明。首先看下面的t1表。1、如果直