実装コード
from difflib import HtmlDiff
# 比較ファイルを開く
with open('file1.txt','r') as f:
file1 = f.readlines()
with open('file2.txt','r') as f:
file2 = f.readlines()
# 比較結果HTMLを作成
df = HtmlDiff()
with open('diff.html','w') as html:
html.writelines(df.make_file(file1, file2))
比較ファイル
file1.txt
あああああ
いいいいい
ううううう
えええええ
おおおおお
かかかかか
くくくくく
けけけけけ
こここここ
file2.txt
あああああ
いいいいい
ううううう
ううううう
えええええ
おおおおお
かかかかか
ききききき
くくくくく
けけけけけ
こここここ
比較結果
説明
Python ではdifflibモジュールを利用することで、簡単にファイルの差分を取得することができます。
今回は比較結果をHTMLで出力しています。
まず、difflibモジュールを利用するため、difflibをimportします。
from difflib import HtmlDiff
次に比較対象のファイルをopenします。
今回はfile1.txtとfile2.txt のファイルを読み込みしています。
# 比較ファイルを開く
with open('file1.txt','r') as f:
file1 = f.readlines()
with open('file2.txt','r') as f:
file2 = f.readlines()
そして、差分結果をmake_file()でHTMLとして取得します。
diff.html を書き込みモードで開き、取得したHTMLをwritelines()で保存します。
# 比較結果HTMLを作成
df = HtmlDiff()
with open('diff.html','w') as html:
html.writelines(df.make_file(file1, file2))
これで、diff.htmlという名前のファイルが作成されます。
まとめ
以上で、ファイルの比較結果をHTML形式で作成することができます。
ありがとうございました。