使用python实现文本的diff

1: python代码如下(mydiff.py):

    #!/usr/bin/env python

    #coding:utf-8

    import difflib

    import sys

    try:

            textfile1 = sys.argv[1]

            textfile2 = sys.argv[2]

    except Exception, e:

            print "Error:"+str(e)

            print "Usage: python mydiff.py filename1 filename2"

            sys.exit()

    

    def readfile(filename):

            try:

                    fileHandle = open(filename, 'rb')

                    text = fileHandle.read().splitlines()

                    fileHandle.close()

                    return text

            except IOError as error:

                    print('Read file Error:'+str(error))

                    sys.exit()

    

    if textfile1=="" or textfile2=="":

            print "Usage: python mydiff.py filename1 filename2"

            sys.exit()

    

    text1_lines = readfile(textfile1)

    text2_lines = readfile(textfile2)

    

    d = difflib.HtmlDiff()

    print d.make_file(text1_lines, text2_lines)


2: 使用方法

    python mydiff.py mydiff.py mydiff.py >/test.html

    下载test.html即可查看对比效果。


3: 脚本说明

    使用python的difflib实现的html对比效果。


4: 额外说明

    可以使用jsp或者php等,把diff结果通过网页上展示出来。就实现了网页diff的功能了。


你可能感兴趣的:(python,diff,difflib,文本对比)