ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python difflib比较内容之间的差异

2022-02-17 15:00:08  阅读:202  来源: 互联网

标签:0.9 __ python 差异 difflib Accept application html net


之前一直在寻找比较内容差异的库,原来python标准库里自带有difflib库

这就比较有意思了,对于数据采集来说比较两次请求参数的变化就很有用了,可以知道哪些是变化的,方便定位比较

import difflib
def diff_headers():
	text1 ='''Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
		Accept-Encoding: gzip, deflate
		Accept-Language: q=0.9,en;q=0.8,en-US;q=0.7;zh-CN,zh;
		Cache-Control: no-cache
		Connection: keep-alive
		Cookie: UM_distinctid=17c5f7e8e37f8b-030342123ea219-513c1743-15f900-17c2f7e8e38463; CNZZDATA1586682=cnzz_eid%3D1569740215-1636510718-null%26ntime%3D1642568049; PHPSESSID=l5otho4quql6jpf7majg5795fs; _stat_uid=05967439303530977045856681345587735
		Host: www.chem365.net
		Pragma: no-cache
		Referer: http://www.chem365.net/
		Upgrade-Insecure-Requests: 1
		User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36 Edg/98.0.1108.50'''.splitlines(keepends=True)

	text2 = ''' Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
		Accept-Encoding: gzip, deflate
		Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-US;q=0.7
		Cache-Control: no-cache
		Connection: keep-alive
		Cookie: UM_distinctid=17c2f7e8e37f8b-030342123ea219-513c1743-15f900-17c2f7e8e38463; CNZZDATA1586682=cnzz_eid%3D1569740215-1636510718-null%26ntime%3D1642568049; PHPSESSID=l5otho4quql6jpf7majg5795fs; _stat_uid=05967439303530977045856681345587735
		Host: www.chem365.net
		Pragma: no-cache
		Referer: http://www.chem365.net/web/index/information/classid/142.html
		Upgrade-Insecure-Requests: 1
		User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.80 Safari/537.36 Edg/98.0.1108.50
	     '''.splitlines(keepends=True)

	d = difflib.HtmlDiff()
	htmlContent = d.make_file(text1,text2)
	# print(htmlContent)
	with open('diff_header.html','w') as f:
	    f.write(htmlContent)

if __name__ == '__main__':
	# diff_html()
	diff_headers()

  

 

 如图是根据生成的html可以清晰的看到内容的变动(不同的颜色代表不同的动作),这样做比较久很容易看出来了

更详细的内容可以参考: https://blog.csdn.net/weixin_45775963/article/details/104122753

标签:0.9,__,python,差异,difflib,Accept,application,html,net
来源: https://www.cnblogs.com/fly-kaka/p/15904664.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有