用Python制作有声小说

作者:菜鸟哥

来源:程序员GitHub

大家好,欢迎来到 「Python数据之道」 !

有不少朋友都热衷于看小说。俗话说:小说阅读一时爽,一直阅读一直爽。但是小说阅读时间久了,会给我们的眼睛带来很严重的负担,造成眼部的一些不适。

为了解决这个问题,同时能够让大家体验小说的内容,今天给大家用Python做个有声小说转换工具,通过爬取小说,并将小说转化成语音形式,让大家以听的形式来“阅读”小说,同时解放自己的双眼。

01. 整体的思路如下

  • 首先我们输入想要阅读小说的名称和相应的章节;

  • 然后将小说的文本进行爬取并保存到本地的txt文档之中;

  • 接下来是读取小说的文本,然后转换为语音形式,并保存到本地的mp3文件中;

  • 最后点击播放该mp3文件即可

02. 小说的爬取

小说的文本我们爬取的小说来自于网站笔趣阁(https://www.biquge5200.com/)。先是输入我们想要爬取的小说名称 ,程序如下图所示:

1. 构造出需要爬取的小说名称的链接

由于网页会返回所有名字包含我们输入名称的小说,所以我们要进行筛选,筛选出完全符合我们输入名称的小说,然后返回该小说的地址。如果找不到该小说,则程序退出。

2. 提取小说的章节

接下来是对小说相应章节的提取,get_url函数返回所有章节的地址链接信息。get_txt函数。首先输出所有章节的名称,然后大家选择自己想要阅读的章节,程序接下来便会爬取该章节的内容,并返回选择的章节名称和章节的内容。返回的小说内容会被写入到本地的特定文件夹当中,也就完成了我们流程的前半部分。部分程序如下图所示:

03.文本转化为小说

经过前面几步,我们就可以将文本小说转化为语音小说,并保存到本地的音频文件当中,部分程序如下图所示:

我们利用的是百度AI的语音合成技术,来将文本转化为音频。

官方文档:

https://ai.baidu.com/ai-doc/SPEECH/Ik4nlz8l6

上面有详细的安装使用和示例代码:

我们构造一个语音合成的实例类,并命名为self.client。需要注意的是,由于每次上传的文本最大不能超过1024个字节,所以需要在程序中对字符串进行切分,分批上传,并将结果写入到音频文件中。

上图程序中,synthesis函数中的各个参数都是可以进行调节的,其中“vol”、“spd”、“pit”、“per”分别控制着音量、语速、语调和音色,大家可以根据自己的习惯进行调节。

至此,我们便完成了从小说对应章节的爬取到文本转换为语音的全过程,最后,为大家带来的是视频演示:

这样,大家就可以解放双眼,用耳朵来“阅读”小说啦。

如果文章对你有帮助,欢迎转发/点赞/收藏~

---------End---------

 后台回复「微信群」,将邀请加入读者交流群。

????分享、点赞、在看,给个三连击呗!???? 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值