python判断图片类型_Python判断图片真实类型
仅仅根据文件后缀判断文件类型显然不准,在python有一个内置模块imghdr可以用来判断图片的真实类型。代码如下:
import imghdr
imgType = imghdr.what(imageFile)
将会输出gif,png,jpeg等图片类型 。其原理是通过读取文件的开头的一段字符进行类型匹配 。具体查看了下代码,imageFile只能是本地文件,不可以是url 远程文件。具体可以个修改下该模块,使其支持远程文件。
使用场景:
经常在抓取一些站点上的图片时,有些站点上的图片直接是不带文件类型的,如:http://segmentfault.com/img/bVksck ,可以通过该模块进行抓取后,为文件增加相应的后缀名,而如果发现抓取的文件不是图片类型文件时进行删除(避免抓到别人修改过的图片木马),以下是一个简单的判断删除示例:
import imghdr,os
#filename = 'img.py'
filename = 'bVksck'
imgType = imghdr.what(filename)
if imgType:
print imgType
newName = (filename + '.' + imgType)
os.rename(filename,newName)
else:
print 'the file is not a pic,rm it now'
os.remove(filename)
python判断图片类型_Python判断图片真实类型相关推荐
- python下载文件损坏_Python检查图片是否损坏及图片类型是否正确过程详解
检查图片是否损坏 日常工作中,时常会需要用到图片,有时候图片在下载.解压过程中会损坏,而如果一张一张点击来检查就太不Cool了,因此我想大家都需要一个检查脚本: 测试图片,0.jpg是正常的,brok ...
- python怎么判断是不是列表_python判断变量是否为int、字符串、列表、元组、字典等方法...
在实际写程序中,经常要对变量类型进行判断,除了用type(变量)这种方法外,还可以用isinstance方法判断: #!/usr/bin/env python a = 1 b = [1,2,3,4] ...
- python判断是不是整数1002python判断是不是整数_Python判断一个数是不是为整数的方法...
Python判断一个数是不是为整数的方法 发布时间:2020-07-08 15:44:30 来源:亿速云 阅读:84 作者:清晨 不懂Python判断一个数是不是为整数的方法?其实想解决这个问题也不难 ...
- python显示图片列表_python读取图片任意范围区域
使用python进行图片处理,现在需要读出图片的任意一块区域,并将其转化为一维数组,方便后续卷积操作的使用. 下面使用两种方法进行处理: convert 函数 from PIL import Imag ...
- python读取图片格式_Python读取图片尺寸、图片格式
Python读取图片尺寸.图片格式 需要用到PIL模块,使用pip安装Pillow.Pillow是从PIL fork过来的Python 图片库. from PIL import Image im = ...
- python处理pdf实例_Python程序图片和pdf上文字识别实例
实例一:先减少背景杂音,再做图片文字识别 为了提高识别率,先用opencv-python对扫描的图片做预处理(减少背景杂音),然后调用pytesseract识别图片上的文字.处理方式就是: 学习Pyt ...
- python获取视频缩略图_python接收图片变成缩略图
python图像处理库:Pillow初级教程 Image类 Image.resize()和Image.thumbnail()的区别 根据代码和代码注释, 这两个函数都是对图片进行缩放, 两者的主要区别 ...
- python图像灰度化_python实现图片二值化及灰度处理方式
python实现图片二值化及灰度处理方式 我就废话不多说了,直接上代码吧! 集成环境:win10 pycharm #!/usr/bin/env python3.5.2 # -*- coding: ut ...
- 用python字符画生日快乐_Python:图片转字符画(~情人节神器~)
字符画真的很有意思,将图片中的像素用字符代替,就生成了字符画. 但是像素是有颜色深浅的,我们如何将带有不同颜色的像素编码为对应的字符呢? 转化方法: 将彩色图片转化为灰度图 根据颜色深浅的RGB值(值 ...
最新文章
- ICLR2021 | 清华大学黄高团队:显存不够?不妨抛弃端到端训练
- 监督学习和无监督学习
- gradle第二天(Building a RESTful Web Service)
- CTFshow php特性 web125
- elasticsearch 根据条件去除重复值_Excel工作表中的条件格式,不只是查找重复值,还有7种典型用法...
- 【数据库】《SQL必知必会 4th》部分笔记
- Java中如何克隆集合——ArrayList和HashSet深拷贝
- QT5动态创建多个按钮控件并关联信号槽函数
- 创建设计模式 - Singleton设计模式(最佳实践与示例)
- shell编程关于数组的那点事
- RabbitMQ的基本概念
- UVA1091 WF4786 Barcodes【编码检查】
- leetcode:String to Integer (atoi)
- 雅虎再掀高管离职潮 博客列三大原因
- JMeter常用的4种参数化方式-操作解析
- 计算机组成原理与体系结构
- STM32(八)W25Q(16/32/64/128)芯片学习总结
- 互联网手机卡资费对比
- 传输层协议TCP和UDP的区别详解
- android 获取摄像头像素
热门文章
- node js怎么进行打包发布linux,Node.js JXcore 打包
- pinia与vuex的区别以及pinia的使用
- 蓝桥杯真题 15省7-牌型种数 小明被劫持到X赌城,被迫与其他3人玩牌。 一副扑克牌(去掉大小王牌,共52张),均匀发给4个人,每个人13张。 这时,小明脑子里突然冒出一个问题: 如果不考虑花色,
- python图像去污_百度AI攻略:图像去雾
- 百付宝钱包一分钱专项活动
- acm 巧妙借助二进制_借助此刻完全流化您的生活
- python 最短路径算法_最短路径python
- 淘宝店铺发布API接口(新),淘宝oAuth2.0店铺商品API接口,淘宝商品发布API接口,淘宝商品上架API接口,一整套发布上架店铺接口对接分享
- 长途运输市场现状研究分析与发展前景预测
- 大话设计模式 第四章 开闭原则 优惠券