本文實例講述了Python實現的文本對比報告生成工具。分享給大家供大家參考,具體如下:
借助于difflib的功能,可以針對我們的使用情況進一步進行功能的聚合。我想要的功能是輸入兩個文件名以及一個輸出報告的文件名之后,運行直接給出最終的報告。
代碼實現如下:
import sysimport difflibtry:  file1 = sys.argv[1]  file2 = sys.argv[2]  report = sys.argv[3]except Exception,e:  print('Error:' + str(e))  sys.exit()def GetLines(file_name):  return open(file_name).readlines()txt_line1 = GetLines(file1)txt_line2 = GetLines(file2)d = difflib.HtmlDiff()fid = open(report,'w')fid.write(d.make_file(txt_line1,txt_line2))fid.close()測試如下:
GreydeMac-mini:Chapter_02 greyzhang$ ls
c01.py d2.py
dns_parser.py pydiff.py
d1.py diff.py
join.py
GreydeMac-mini:Chapter_02 greyzhang$ python diff.py d1.py d2.py report.html
GreydeMac-mini:Chapter_02 greyzhang$ ls
c01.py d2.py
dns_parser.py pydiff.py
d1.py diff.py
join.py report.html
使用瀏覽器打開報告如下:
報告生成成功,而整個操作也簡化了不少。
新聞熱點
疑難解答