从某个电报群下载了几十 gb 的小说
想进行去重,各位大佬给个思路
类似于这种
文件 1 文件 2 章节标题不一致
同时文件 2 和文件 3 可能缺胳膊少腿的
同时文件 1 ,2 ,3 可能每个章节内容都有少量不同
该怎么筛选出相对最完整的文件
文件 1
第一回 灵根育孕源流出 心性修持大道生
第二回 悟彻菩提真妙理 断魔归本合元神
···
···
第一百回 径回东土 五圣成真
文件 2
第 1 回 灵根育孕源流出 心性修持大道生
第 2 回 悟彻菩提真妙理 断魔归本合元神
···
···
第 39 回 一粒金丹天上得 三年故主世间生
文件 3
第 1 回 灵根育孕源流出 心性修持大道生
第 2 回 悟彻菩提真妙理 断魔归本合元神
···
···
第八十七回 凤仙郡冒天止雨 孙大圣劝善施霖
1
eason1874 2022-08-01 10:50:48 +08:00
按章分割,统计字数,取字数最多的版本
|
2
abc0123xyz OP @eason1874 该怎么判断若干个文件是同一本书呢?
|
3
Woood 2022-08-01 10:58:20 +08:00 1
自己的活儿自己想办法
|
4
eason1874 2022-08-01 11:01:27 +08:00
@abc0123xyz 取章名比较文本相似度不就知道了
|
5
bipy 2022-08-01 13:13:25 +08:00
import difflib
with open('1.txt', 'r') as t1, open('2.txt', 'r') as t2: sm = difflib.SequenceMatcher(None, t1.readlines(), t2.readlines()) print(sm.ratio()) # Output # 0.9974747474747475 自己加点逻辑,遍历一下即可,另外 difflib.get_close_matches() 还可以匹配到相近的标题 |