python实现的jpg格式图片修复代码


Posted in Python onApril 21, 2015

最近为客户修复损坏的jpg写的,效果还可以,但不保证适用任何情况。

如果你有损坏照片,不妨试一试,如果可以使用给我留个言哦。

# -*- coding: utf8 -*-

# !/usr/bin/env python
__author__ = 'fengxing'

__date__ = '2012-1-18 20:13'
import sys


def jpgfix(name):

    sig = '\xFF\xD8\xFF\xDB'

    with open(name, "r") as fd:

        fd.seek(len(sig), 0)

        jpg = fd.read()

        pos = jpg.find(sig)

        if pos < 0:

            raise Exception('Not find signature')

        jpg = jpg[pos:]
    with open(name, "w") as fd:

        fd.seek(0, 0)

        print 'size is:', len(jpg)

        fd.write(jpg)
if __name__ == '__main__':

    try:

        while True:

            jpgfix(sys.argv[1])

    except:

        print 'Done'

使用方法很简单,上面代码另存为jpg_fix.py,再从命令行里输入

python jpg_fix.py ABC.jpg

ABC.jpg就是你要修复的图片(注意:修复前请自行备份)
Python 相关文章推荐
搭建Python的Django框架环境并建立和运行第一个App的教程
Jul 02 Python
利用python爬取散文网的文章实例教程
Jun 18 Python
Python编程之序列操作实例详解
Jul 22 Python
Python时间的精准正则匹配方法分析
Aug 17 Python
浅析python3中的os.path.dirname(__file__)的使用
Aug 30 Python
Win10下python 2.7.13 安装配置方法图文教程
Sep 18 Python
Python多项式回归的实现方法
Mar 11 Python
windows中安装Python3.8.0的实现方法
Nov 19 Python
Python使用gluon/mxnet模块实现的mnist手写数字识别功能完整示例
Dec 18 Python
Pytorch maxpool的ceil_mode用法
Feb 18 Python
Pytorch学习之torch用法----比较操作(Comparison Ops)
Jun 28 Python
Python变量格式化输出实现原理解析
Aug 06 Python
在Python的Flask框架中使用日期和时间的教程
Apr 21 #Python
在Python的Flask框架下收发电子邮件的教程
Apr 21 #Python
在Python的Flask框架中实现全文搜索功能
Apr 20 #Python
Python的Flask框架中实现分页功能的教程
Apr 20 #Python
在Python的Flask框架中实现单元测试的教程
Apr 20 #Python
Python的Flask框架中实现登录用户的个人资料和头像的教程
Apr 20 #Python
Python的Flask框架中实现简单的登录功能的教程
Apr 20 #Python
You might like
实用函数9
2007/11/08 PHP
PHP 实现explort() 功能的详解
2013/06/20 PHP
关于URL最大长度限制的相关资料查证
2014/12/23 PHP
php删除指定目录的方法
2015/04/03 PHP
基于php+MySql实现学生信息管理系统实例
2020/08/04 PHP
JavaScript中的对象化编程
2008/01/16 Javascript
jQuery EasyUI API 中文文档 - Dialog对话框
2011/11/15 Javascript
jquery入门—数据删除与隔行变色以及图片预览
2013/01/07 Javascript
js倒计时小程序
2013/11/05 Javascript
js获取判断上传文件后缀名的示例代码
2014/02/19 Javascript
jquery实现的省市区三级联动
2015/04/02 Javascript
JavaScript判断数组是否包含指定元素的方法
2015/07/01 Javascript
用Webpack构建Vue项目的实践
2017/11/07 Javascript
微信小程序开发之自定义tabBar的实现
2018/09/06 Javascript
浅谈vue项目打包优化策略
2018/09/29 Javascript
[02:56]《DAC最前线》之国外战队抵达上海备战亚洲邀请赛
2015/01/28 DOTA
推荐11个实用Python库
2015/01/23 Python
Python学习笔记之集合的概念和简单使用示例
2019/08/22 Python
18个Python脚本可加速你的编码速度(提示和技巧)
2019/10/17 Python
python无序链表删除重复项的方法
2020/01/17 Python
python hmac模块验证客户端的合法性
2020/11/07 Python
canvas进阶之如何画出平滑的曲线
2018/10/15 HTML / CSS
Perfume’s Club澳大利亚官网:西班牙领先的在线美容店
2021/02/01 全球购物
软件配置管理有什么好处
2015/04/15 面试题
怎样写好自荐信和推荐信
2013/12/26 职场文书
大学生职业生涯规划书
2014/03/14 职场文书
抵押贷款承诺书
2014/05/30 职场文书
cf战队收人口号
2014/06/21 职场文书
单位委托函范文
2015/01/29 职场文书
同事打架检讨书
2015/05/06 职场文书
费城故事观后感
2015/06/10 职场文书
离职信范本
2015/06/23 职场文书
班主任班级管理心得体会
2016/01/07 职场文书
HashMap实现保存两个key相同的数据
2021/06/30 Java/Android
Nginx实现会话保持的两种方式
2022/03/18 Servers
Python 图片添加美颜效果
2022/04/28 Python