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

(编辑:jimmy 日期: 2024/10/3 浏览:2)

最近为客户修复损坏的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就是你要修复的图片(注意:修复前请自行备份)

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。