吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 807|回复: 8
收起左侧

[Python 原创] txt小说的句子被读书app硬生生分段读的处理

  [复制链接]
ilvwapj0 发表于 2024-8-10 16:00
    最近下了个小说,txt格式。用某听书app听小说时,经常碰到好好的一句话硬生生分两半读的情形。一看txt文本原来是每行后面都有换行符,惯不得分段读,不能怨人家读书app软件。
    开干。怎样去除不该换行的换行符呢?基本思路,除标点外的汉字后面一般不应该换行,写点代码简单处理了一下,听书效果好多了。
[Python] 纯文本查看 复制代码
fp1=open(r"源文件.txt",'r',encoding="utf-8")#请先用记事本打开源文件另存为utf-8编码文件
fp2=open(r"目标文件.txt",'w',encoding="utf-8")
bd="!?,。、"“”〝〞#$%&'~()*+-/\:;<=>[]^`{}「」《》「」『』【】〖〗—…." #句尾可能会用到的标点
lineall=fp1.readlines()
line2all=[]
linet=""
for line in lineall:
    if line.strip()!="":
        if line.strip()[-1] in bd:            
            linet=linet+line
            line2all.append(linet)
            linet=""
        else:
            linet=linet+line[:-1]
fp2.writelines(line2all)
fp1.close()
fp2.close()


不过结果有点小问题,章节行尾的换行符也被搞掉了。重来,用高大上的正则。

[Python] 纯文本查看 复制代码
import re
fp1=open(r"源文件.txt",'r',encoding="utf-8")
fp2=open(r"目标文件.txt",'w',encoding="utf-8")
lineall=fp1.readlines()
for line in lineall:
    if re.match('.+[\u4e00-\u9f5a]+\n',line):
        if not re.match('(^第.+?章)',line):
            fp2.write(line[:-1])
        else:
            fp2.write(line)
    else:
        fp2.write(line)
fp1.close()
fp2.close()


再看结果,好像还不错。听书app听起来舒服多了^_^
示范图.jpg

免费评分

参与人数 3吾爱币 +8 热心值 +3 收起 理由
苏紫方璇 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
helian147 + 1 + 1 热心回复!
mxbt124sk + 1 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

头像被屏蔽
wuligiao 发表于 2024-8-11 09:11
提示: 作者被禁止或删除 内容自动屏蔽
 楼主| ilvwapj0 发表于 2024-8-11 09:45
wuligiao 发表于 2024-8-11 09:11
某听书APP是什么APP,我用的TXT文本听书,就比较没感情的阅读,都这样吗?

阅读有没有感情最终还是取决于手机安装的tts质量
头像被屏蔽
wuligiao 发表于 2024-8-11 09:48
 楼主| ilvwapj0 发表于 2024-8-11 10:06
wuligiao 发表于 2024-8-11 09:48
哦?那不知阁下可有法子解决此种情况。

本站搜MultiTTS,选个自己满意的

免费评分

参与人数 1吾爱币 +1 收起 理由
wuligiao + 1 谢谢@Thanks!

查看全部评分

HA1AH 发表于 2024-8-12 14:09
没感情的朗读还不如直接看小说
小小小酥 发表于 2024-8-13 12:04
感谢大佬分享
XD001 发表于 2024-8-15 19:52
感谢大佬分享
jjm1178583316 发表于 2024-8-16 10:55

感谢大佬分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-28 09:01

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表