python使用difflib模块比较两个文件内容异同,同时输出html易浏览(代码片段)

author author     2022-11-24     409

关键词:

因工作需求,需要对比连个文件异同,并输出html格式来对比。

#!/usr/bin/python
# -*- coding: utf-8 -*-

import sys
import difflib

def read_file(filename):
    try:
        with open(filename, ‘r‘) as f:
            return f.readlines()
    except IOError:
        print("ERROR: 没有找到文件:%s或读取文件失败!" % filename)
        sys.exit(1)

def compare_file(file1, file2, out_file):
    file1_content = read_file(file1)
    file2_content = read_file(file2)
    d = difflib.HtmlDiff()
    result = d.make_file(file1_content, file2_content)
    old_str=‘charset=ISO-8859-1‘
    new_str=‘charset=UTF-8‘
    with open(out_file, ‘w‘) as f:
        f.writelines(result.replace(old_str,new_str))

if __name__ == ‘__main__‘:
    compare_file(r‘d:\1\a.log‘, r‘d:\2\a.log‘, r‘d:\result.html‘)

输出为一个result.html文件,打开后已于浏览。

参考:Python--比较文件内容
python使用difflib对比文件示例
Python自动化运维笔记(四):使用difflib模块实现文件内容差异对比

python比较文件差异,difflib类库的使用

difflib是Python中的一个标准类库,用于比较文本文件或字符串之间的差异。它实现了多种比较算法,包括基于行的比较和基于字符的比较,并提供了多种输出格式。本教程将介绍如何使用difflib类库进行文本比较,包括以下主题:... 查看详情

python有没有一个模块可以比较两个文本文件内容差异的?而且可以只输出差异的部分?

...差异只有几十行,试用过filecmp模块觉得输出不够详细。 difflib是python提供的比较序列(stringlist)差异的模块。实现了三个类:1>SequenceMatcher任意类型序列的比较(可以比较字符串)2>Differ对字符串进行比较3>HtmlDiff将比较结果输... 查看详情

python对比两个txt文件内容(代码片段)

difflib模块作为python的标准库模块,无需安装,作用是比对文本之间的差异,且支持输出可读性比较强的html格式。#!coding=utf-8#2018-9-19importsysimportdifflib#读取配置文件函数defread_file(file_name):try:file_handle=open(file_name,‘r‘)text=file_handle.... 查看详情

python中difflib内置模块之文本对比

什么是difflib?用来做什么?difflib为python的标准库模块,无需安装。作用时对比文本之间的差异。并且支持输出可读性比较强的HTML文档,与Linux下的diff命令相似。在版本控制方面非常有用。符号理解符号含义‘-‘包含在第一个系列... 查看详情

文件内容比较difflib

#!/usr/bin/envpython#-*-coding:utf-8-*-importdifflibimportsys,osos.chdir(‘E:\PythonWrok‘)a=open(‘sayhi.txt‘,‘r‘).readlines()b=open(‘hello.txt‘,‘r‘).readlines()diff=difflib.ndiff(a,b)sys.stdout.writel 查看详情

python:对比两段文本和两个文件不同的地方

...不包含换行符,如果为True,则保留换行符。用的是Pythondifflib模块:difflib是Python提供的比较序列(stringlist)差异的模块。实现了三个类:1>SequenceMatcher任意类型序列的比较(可以比较字符串)2>Differ对字符串进行比较3>HtmlDiff将... 查看详情

Python:如何比较两个二进制文件?

...:在python中,我需要打印两个二进制文件的差异。我在看difflib.Differ,它做了很多。但假设文本行不同,因此输出不会列出字节索引和十六进制值的差异。我需要的是输出有什么不同的字节,字节如何不同,两个字节的实际十六... 查看详情

python模块详解|filecmp(代码片段)

简介:filecmp是python内置的一个模块,用于比较文件及文件夹的内容,它是一个轻量级的工具,使用非常简单 两个主要的方法:filecmp.cmp(f1, f2[, shallow])   比较两个文件的内容是否匹配。参数f1,f2指定要比较... 查看详情

使用 python3 模块 face_recognition 比较两个人脸?

】使用python3模块face_recognition比较两个人脸?【英文标题】:Сomparetwofacesusingpython3moduleface_recognition?【发布时间】:2021-12-0422:44:03【问题描述】:抱歉我的英语不好。我正在尝试使用python3模块\'face_recognition\'比较两张面孔这是一... 查看详情

difflib文件差异对比

1、两个字符串差异对比:#!/usr/bin/env python# -*- coding:utf-8 -*-import difflibtext1 = ‘‘‘text1:This module provides classes and functions for&nb 查看详情

比较python中两个文件的非重复文件内容格式(代码片段)

我想知道是否有一种方法来比较python中逗号分隔值(csv)文件的文件内容格式。我有一个脚本,它接受输入csv文件并提供生成的输出。我尝试在给定的文件集上运行脚本,但是收到了我给出的文件的错误消息。为了测试脚本是否... 查看详情

在 Python 中,有没有比较简洁的方法来比较两个文本文件的内容是不是相同?

】在Python中,有没有比较简洁的方法来比较两个文本文件的内容是不是相同?【英文标题】:InPython,isthereaconcisewayofcomparingwhetherthecontentsoftwotextfilesarethesame?在Python中,有没有比较简洁的方法来比较两个文本文件的内容是否相同?... 查看详情

python按层级找出xml文件的差异

...而深度需要根据两个XML文件的差异而定。另外还可以使用difflib库中的diff()函数,它返回XML文件树形结构差异,可以轻松实现层级比对。参考技术A这些XML文件包含数千个小对象。文件本身的大小约为5MB。棘手的是,这两个文件中... 查看详情

python中怎么快速比较2个文件中的内容

...很长时间才能完成,有没有什么更高效率的方法?可以用difflib库,下面给一个例子,具体需求自己研究假如在同一个目录下有a.txt,b.txt两个文本文件a.txt内容是aaabbbb.txt内容是aaacccimport diffliba = open('a.txt', '... 查看详情

使用vim比较两个文件的内容

...bsp;原文地址:http://blog.chinaunix.net/uid-22548820-id-3477464.html1.使用vim的比较模式打开两个文件:vim-dfile1file2或vimdifffile1file2 2.如果已经打开了文件file1,再打开另一个文件file2进行比较::vertdiffsplitfile2如果没有用vert命令,diffsplit则会... 查看详情

pythondifflib文本比较利器,入手不亏(代码片段)

@[toc]一、引言difflib模块:是提供的类和方法用来进行序列的差异化比较,它能够比对文件并生成差异结果文本或者html格式的差异化比较页面。其作为python的内置库,有着强大的文本比对功能,此篇介绍五个常用的difflib功能二、... 查看详情

使用 Python 比较两个 excel 文件

】使用Python比较两个excel文件【英文标题】:ComparingtwoexcelfilesbyusingPython【发布时间】:2019-06-2720:45:56【问题描述】:我有两个excel文件中的数据,如下所示已创建示例DS:df1=\'Transaction_Name\':[\'SC-001_Homepage\',\'SC-002_Homepage\',\'SC-001_S... 查看详情

使用 Python 减去/比较两个音频文件之间的差异

】使用Python减去/比较两个音频文件之间的差异【英文标题】:Subtract/comparedifferencesbetweentwoaudiofilesusingPython【发布时间】:2021-07-1923:35:39【问题描述】:我的目标是获取两个长度相同的.wav文件,一个带有噪声+语音的原始文件,... 查看详情