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的Flask框架来构建一个简单的数字商品支付解决方案
Mar 31 Python
python开发之for循环操作实例详解
Nov 12 Python
python 使用poster模块进行http方式的文件传输到服务器的方法
Jan 15 Python
Python音频操作工具PyAudio上手教程详解
Jun 26 Python
Django中的cookie和session
Aug 27 Python
Python socket实现的文件下载器功能示例
Nov 15 Python
浅谈pytorch卷积核大小的设置对全连接神经元的影响
Jan 10 Python
tensorflow中tf.slice和tf.gather切片函数的使用
Jan 19 Python
pycharm 对代码做静态检查操作
Jun 09 Python
零基础小白多久能学会python
Jun 22 Python
Python求区间正整数内所有素数之和的方法实例
Oct 13 Python
利用Python批量识别电子账单数据的方法
Feb 08 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
既简单又安全的PHP验证码 附调用方法
2016/06/02 PHP
php 截取utf-8格式的字符串实例代码
2016/10/30 PHP
浅谈Laravel队列实现原理解决问题记录
2017/08/19 PHP
List the UTC Time on a Computer
2007/06/11 Javascript
javascript中的几个运算符
2007/06/29 Javascript
url 特殊字符 传递参数解决方法
2010/01/01 Javascript
jQuery 动画弹出窗体支持多种展现方式
2010/04/29 Javascript
使用JavaScript检测Firefox浏览器是否启用了Firebug的代码
2010/12/28 Javascript
让AJAX不依赖后端接口实现方案
2012/12/03 Javascript
jQuery $.data()方法使用注意细节
2012/12/31 Javascript
jQuery链使用指南
2015/01/20 Javascript
js实现拖拽效果(构造函数)
2015/12/14 Javascript
jQuery插件zTree实现的基本树与节点获取操作示例
2017/03/08 Javascript
讲解vue-router之命名路由和命名视图
2018/05/28 Javascript
vue.js+element-ui动态配置菜单的实例
2018/09/07 Javascript
微信小程序实现3D轮播图效果(非swiper组件)
2019/09/21 Javascript
基于vue--key值的特殊用处详解
2020/07/31 Javascript
Python3里的super()和__class__使用介绍
2015/04/23 Python
Python打造出适合自己的定制化Eclipse IDE
2016/03/02 Python
在Pycharm terminal中字体大小设置的方法
2019/01/16 Python
Python3 批量扫描端口的例子
2019/07/25 Python
Python基于模块Paramiko实现SSHv2协议
2020/04/28 Python
Python Dict找出value大于某值或key大于某值的所有项方式
2020/06/05 Python
Python实现在线批量美颜功能过程解析
2020/06/10 Python
python如何快速拼接字符串
2020/10/28 Python
Vans荷兰官方网站:美国南加州的原创极限运动潮牌
2018/01/23 全球购物
意大利火车票和铁路通行证专家:ItaliaRail
2019/01/22 全球购物
阿玛尼美妆英国官网:Giorgio Armani Beauty英国
2019/03/28 全球购物
美国亚马逊旗下男装网站:East Dane(支持中文)
2019/09/25 全球购物
高中毕业自我鉴定范文
2013/10/02 职场文书
历史专业学生的自我评价
2014/02/28 职场文书
机关党员2014全国两会学习心得体会
2014/03/10 职场文书
2014年文学毕业生自我鉴定
2014/04/23 职场文书
基层党员干部四风问题整改方向和措施
2014/09/25 职场文书
第一军规观后感
2015/06/12 职场文书
Python中request的基本使用解决乱码问题
2022/04/12 Python