- 浏览: 267170 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (263)
- mysql (5)
- boost (6)
- 工具 (10)
- IT生活 (7)
- 多线程 (3)
- Ruby (15)
- php (2)
- MongoDB (39)
- 移动互联网 (2)
- 测试 (8)
- c++ (28)
- 书 (1)
- 网站 (3)
- 网络编程 (14)
- 开源软件 (1)
- 分布式计算 (1)
- 得得得 (1)
- php,wordpress (1)
- error (5)
- 编译 (2)
- 学习 (1)
- 杀毒软件 (1)
- dd (0)
- linux (21)
- 数据库 (1)
- STL (1)
- c++/c (5)
- 软件设计 (1)
- 操作系统 (4)
- 库 (2)
- win32 (1)
- s (0)
- openssl (1)
- perl (2)
- debug (1)
- windows (4)
- python (12)
- windows 防火墙 (1)
- vs (1)
- vim (2)
- vc (1)
- 浏览器插件的危害 (1)
- curl (0)
- 判断手机号码合法性的库 (0)
- 地址备注 (0)
- 安装 File::Slurp (1)
- cenos (2)
- shell (1)
- linunx (1)
- internet (1)
- software (1)
- widows (1)
- linux io (1)
- nginx (2)
- 算法 (2)
- google (1)
- protobuf (2)
- tengine (1)
- tools (1)
- lua (2)
- liunx (1)
- vcard (1)
- lua-iconv (1)
- 网络 (2)
- teat (0)
- ldconfig linux (0)
- awk (0)
- grep (0)
- windws (2)
- linux 命令 (1)
- tcp dump (1)
- vmware (1)
- question2answer (2)
- mongdb (1)
- 正则 (1)
- OCR (2)
- Windows Server (1)
最新评论
用扩展名判断文件格式非常简单,但是有可能是错误的。 jpeg文件有固定的文件头,其文件头的格式如下:
所以我们可以通过文件头的方式快速判断文件格式:
上面的方式通过文件的前x个字节对文件格式做了判断,如果我们的要求更高,可以通过PIL类库来做判断。
转自: http://outofmemory.cn/code-snippet/35749/python-test-jpeg-file-with-header-or-PIL-library
花下眠工作室:
Start Marker | JFIF Marker | Header Length | Identifier 0xff, 0xd8 | 0xff, 0xe0 | 2-bytes | "JFIF\0"
所以我们可以通过文件头的方式快速判断文件格式:
def is_jpg(filename): data = open(filename,'rb').read(11) if data[:4] != '\xff\xd8\xff\xe0': return False if data[6:] != 'JFIF\0': return False return True
上面的方式通过文件的前x个字节对文件格式做了判断,如果我们的要求更高,可以通过PIL类库来做判断。
from PIL import Image def is_jpg(filename): try: i=Image.open(filename) return i.format =='JPEG' except IOError: return False
转自: http://outofmemory.cn/code-snippet/35749/python-test-jpeg-file-with-header-or-PIL-library
花下眠工作室:
发表评论
-
python批量修改文件名的小例子
2016-09-22 18:22 371# coding=utf-8 import os,sys ... -
python-pip
2015-11-24 19:40 447$ sudo apt-get install python-p ... -
numpy
2015-11-24 14:40 412http://www.scipy.org/scipylib/d ... -
unknown encoding: cp65001异常 python安装后进入命令行交互模式,输入任何代码都报unknown encoding: cp65001
2015-09-11 15:12 1814unknown encoding: cp65001异常 pyt ... -
python unicode file read
2015-08-28 14:55 455def UnicodeReadFile(fileName): ... -
windows下python安装Numpy和Scipy模块
2015-08-16 07:07 670http://blog.chinaunix.net/uid-2 ... -
python 自动刷服务器
2015-04-02 17:08 299[code = "python"] # c ... -
python 获取当前时间
2014-12-26 14:26 532转自: http://www.cnblogs.com/wanp ... -
python httplib.HTTPSConnection
2014-11-26 09:41 896notifyHost = "" n ... -
python中对文件、文件夹的操作
2013-12-09 11:11 689python中对文件、文件夹 ... -
[转] scons
2012-09-06 17:16 693Scons官方网站:http://www.scons. ...
相关推荐
用扩展名判断文件格式非常简单,但是有可能是错误的。 jpeg文件有固定的文件头,其文件头的格式如下: Start Marker | JFIF Marker | Header Length | Identifier 0xff, 0xd8 | 0xff, 0xe0 | 2-bytes | JFIF\0 所以...
这里列出了常见的图片格式,如`.jpg`、`.jpeg`、`.png`和`.bmp`,如果扩展名匹配其中任何一种,函数将返回`True`,表示该文件是图片;否则,返回`False`。 然后,我们可以通过遍历`os.listdir(directory)`来获取...
需要注意的是,上述代码示例中的`check_image_format`函数只能判断文件是否为有效图像,而不能区分具体是JPEG、PNG还是其他格式。要获取更详细的格式信息,可以在打开图像后,检查`img.format`属性,它会返回如"JPEG...
可以使用`os`库来获取目录中的文件名,并检查文件是否为图片(通常根据扩展名判断)。 ```python import os def batch_convert_images(directory, target_format): for filename in os.listdir(directory): if ...
图片后缀与实际类型匹配检验的函数is_type_wrong会检查文件的扩展名是否与实际内容相符。如果文件的扩展名和实际类型不匹配,程序会返回True,并返回正确的文件类型。 整个过程的关键点在于正确读取文件的头部信息...
例如,如果我们想要获取所有JPEG图片文件的名称,可以使用os.path.splitext()函数来判断文件扩展名是否为“.jpeg”。如果条件成立,则将文件的完整路径加入到一个列表中。 接下来,让我们看看os.listdir()函数。与...
2. **定义文件类型映射表**:创建一个字典,键为十六进制字符串形式的文件头,值为对应的文件扩展名。 ```python def typeList(): return { "52617221": "RAR", "504B0304": "ZIP" } ``` 3. **将字节码转换...
这个函数会检查文件名中是否含有点(.),并且文件的扩展名是否在我们之前设定的允许列表中。 ```python def allowed_file(filename): return '.' in filename and \ filename.rsplit('.', 1)[1].lower() in app....
接着,遍历每一个文件,检查是否为图片文件(通过文件扩展名来判断,支持的格式包括.jpg、.png、.jpeg、.gif)。对于每一个图片文件,程序检查其名称中是否包含特定的字符串(本例中是"-2-01"),如果存在,则使用...
这里使用了条件表达式来判断图片的尺寸,如果图片宽度超过640像素或者高度超过1136像素,则按比例进行缩放,保证图片不会超过这个尺寸。缩放操作使用了thumbnail()方法,它会根据给定的尺寸进行缩放,并且保持图片的...
这里,我们首先通过`os.path.splitext()` 分离文件名和扩展名,然后检查扩展名是否为`.jpeg`。如果是,则将完整的文件路径添加到列表中返回。 #### os.listdir() 除了`os.walk()`,还可以使用`os.listdir()` 函数...
同时,为了只处理图片文件,我们需要一个条件判断,通常是对文件扩展名的检查。 6. 错误处理: 在实际应用中,应考虑可能出现的错误情况,如文件不存在、权限问题、非图片文件等。可以使用`try/except`块来捕获和...
1. 文件扩展名:最常见的方法是通过文件的扩展名来判断。大多数操作系统和应用程序会根据文件扩展名关联到特定的MimeType。然而,这种方法并不总是可靠,因为文件扩展名可以被随意更改。 2. HTTP头部:当通过HTTP或...
本篇文章将详细介绍如何通过读取文件头部特征来判断文件的真实类型,即使其扩展名被修改过。 #### 文件类型检测的重要性 在Web应用中,文件上传功能如果缺乏有效的控制机制,很容易成为攻击者利用的安全漏洞。例如...
例如,可以使用Python的`urlparse`模块来解析URL并检查文件扩展名: ```python from urllib.parse import urlparse, urljoin def is_valid_image_url(url): parsed_url = urlparse(url) return parsed_url.path....
另外,还可以通过文件的扩展名来识别,这可以通过`os.path.splitext()`函数实现。 3. **循环与条件判断**:遍历文件夹中的所有文件,对每个文件进行检查,根据文件类型决定是否将其移动到特定的目录。这需要用到...
在这个示例中,`find_images`函数接收一个目录路径,然后对每个文件进行检查,如果文件名以常见的图片扩展名结尾,就打印出该文件的完整路径。 在"findallpic.rar"压缩包中,我们有两个文件:`findallpic.m`和`pic`...