前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >利用Python将PDF文档转为MP3音频

利用Python将PDF文档转为MP3音频

作者头像
派大星的数据屋
发布于 2022-04-03 03:46:49
发布于 2022-04-03 03:46:49
1.9K01
代码可运行
举报
运行总次数:1
代码可运行

Python大数据分析

1. 转语音工具

微信读书里的电子书有配套的自动音频,而且声音优化的不错,比传统的机械朗读听起来舒服很多。

记得之前看到过Python有一个工具包,可以将文字转换为语音,支持英文和中文,而且能调节语速语调、导出mp3等。

去Github查了下,这个库叫:pyttsx3

简单来说,pyttsx3可以文字转语音,且是离线工作的,这一点就很实用。

安装比较容易,直接在命令行用pip安装:

代码语言:javascript
代码运行次数:0
运行
复制
pip install pyttsx3

我准备动手试试,将PDF书籍转成音频。

用什么书呢?最近在群里看到有人发张磊的新作《价值》电子书,这本今年刚出的畅销书盗版猖獗,我之前在微信读书里看过,对作者长期主义的观点深信不疑。

那就它了。

2. PDF转文本

既然是把PDF转化成语音,肯定是需要先读取PDF中的文字,再利用pyttsx3转语音。

Python中操作PDF的工具库主要是PyPDF2,但发现编码实在有点繁琐,我就换了另一个库pdfplumber,与PyPDF2语法类似,用起来还算流畅。

pdfplumber可以处理PDF包括文本、表格、格式在内的各种信息,小而强大。

代码语言:javascript
代码运行次数:0
运行
复制
# 读取PDF文档
pdf = pdfplumber.open("价值.pdf")

# 获取页数
print("总页数:",len(pdf.pages))
print("-----------------------------------------")

# 读取第4页
first_page = pdf.pages[3]
print("本页:",first_page.page_number+1)
print("-----------------------------------------")

# 导出第4页文本
text = first_page.extract_text()
print(text)

输出:

上面的代码做了几件事情:「读取PDF文档、读取页数、读取第4页、输出第4页文本」

3. 文本转语音

接下来开始将第4页的文本转化为音频。

代码语言:javascript
代码运行次数:0
运行
复制
import pyttsx3

# 初始化来获取语音引擎
engine = pyttsx3.init()

# 去掉文本中的换行符
text = text.replace('\n','')

# 朗读文本
engine.say(text)
engine.runAndWait()

上面代码使用pyttsx3将文本转化为音频,然后朗读出来。我是在jupyter notebook上做实验的,代码执行后,电脑会直接朗读。

也可以将生成的音频保存为mp3格式。

代码语言:javascript
代码运行次数:0
运行
复制
# 保存音频到本地,格式为mp3
engine.save_to_file(text, 'test.mp3')
engine.runAndWait()

当然你还可以调整声音的类型、速度、大小。

代码语言:javascript
代码运行次数:0
运行
复制
# 调整人声类型
voices = engine.getProperty('voices')  
engine.setProperty('voice', voices[0].id)

# 调整语速,范围一般在0~500之间
rate = engine.getProperty('rate')                         
engine.setProperty('rate', 200)     

# 调整声量,范围在0~1之间
volume = engine.getProperty('volume')                         
engine.setProperty('volume',0.8) 

最后听下生成的语音是什么样的?

整体比较流畅,虽然不如微信读书语音听着那般舒服,但做做小工具还是不错的。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python大数据分析 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
利用 Python 将 PDF 文档转为语音音频
微信读书里的电子书有配套的自动音频,而且声音优化的不错,比传统的机械朗读听起来舒服很多
AirPython
2021/01/05
1.7K0
利用 Python 将 PDF 文档转为语音音频
Python|让代码替你“说话”
程序员,在其他人眼中往往都是高冷的存在,在他们的眼中能用代码解决的问题绝对不考虑其他的方法,本文让我们用Python来提升一下高冷的档次,让我们用代码来“说话”。
数据山谷
2020/07/21
1.9K0
四行代码让你的python挑战吴亦凡rap
那么作为一个成熟的python,听说读写是一个必备的技能,如果能让python对指定内容进行阅读,实现语音播报功能,再结合一把具有盲文的键盘,盲人编程指日可待,再或者使用python进行一段rap,挑战一下吴亦凡的地位也不是不可以
行哥玩Python
2020/07/14
1.2K0
四行代码让你的python挑战吴亦凡rap
python3 - 文本读音器
本篇分享的是使用python3制作一个文本读音器,简单点就是把指定的文本文字转语音说出来;做这么个小工具主要是为了方便自己在平时看一些文章眼累的时候,可通过语音来帮助自己,当然如果你是小说迷,可以扩展成一个小说读音器。
py3study
2020/01/19
1.2K0
python自制有声小说
最近工作中测试ASR,语音识别系统。人工读太累,想自动化来实现。给一段text,能给我发出正确的声音,然后按住按钮,产品能够录制下来并且正常识别。
赵云龙龙
2020/08/13
4.4K1
打造个人听书神器:使用pyttsx3实现文字转语音
在这个信息爆炸的时代,我们每天都在处理海量的文字信息。然而,当眼睛疲惫时,我们是否能够通过其他方式来享受阅读的乐趣呢?答案是肯定的。今天,我将带大家了解如何使用Python中的pyttsx3库,将文字转化为语音,打造一个属于自己的听书神器。
LucianaiB
2024/10/24
9350
打造个人听书神器:使用pyttsx3实现文字转语音
在这个信息爆炸的时代,我们每天都在处理海量的文字信息。然而,当眼睛疲惫时,我们是否能够通过其他方式来享受阅读的乐趣呢?答案是肯定的。今天,我将带大家了解如何使用Python中的pyttsx3库,将文字转化为语音,打造一个属于自己的听书神器。随着智能语音助手的普及,文字转语音技术已经成为提升阅读体验的重要工具之一。
LucianaiB
2025/01/12
2040
打造个人听书神器:使用pyttsx3实现文字转语音
5个方便好用的Python自动化脚本
相比大家都听过自动化生产线、自动化办公等词汇,在没有人工干预的情况下,机器可以自己完成各项任务,这大大提升了工作效率。
派大星的数据屋
2022/04/03
6490
5个方便好用的Python自动化脚本
pyttsx3 快速上手之:语音合成播报
大家好,又见面了,我是你们的朋友全栈君。 Python pyttsx3 快速上手之:语音合成播报 安装 pyttsx3: API封装 API使用 博主热门文章推荐: pyttsx3 是python中最常用的文字转语音库,使用方便,功能较为完整 安装 pyttsx3: 首先安装 pyttsx3 lib: pip install pyttsx3 API封装 然后封装下pyttsx3 API,新建一个speaker.py 如下: import pyttsx3 global __speak_
全栈程序员站长
2022/09/13
2.5K1
使用 Python 实现一个简单的智能聊天机器人
最近两天需要做一个python的小程序, 就是实现人与智能机器人(智能对话接口)的对话功能,目前刚刚测试了一下可以实现, 就是能够实现个人与机器的智能对话(语音交流)。
周萝卜
2022/05/22
2.8K0
使用 Python 实现一个简单的智能聊天机器人
Python操作PDF全总结|处理PDF文档不得不知道的两个库
Python在自动化办公方面有很多实用的第三方库,可以很方便的处理word、excel、ppt、pdf文件,今天我们就学习一下Python处理PDF文档的两个常用库「pdfplumber」、「pypdf2」。
吾非同
2021/01/20
3.8K0
从零开始搭建一个语音对话机器人
最近在研究语音识别方向,看了很多的语音识别的资料和文章,了解了一下语音识别的前世今生,其中包含了很多算法的演变,目前来说最流行的语音识别算法主要是依赖于深度学习的神经网络算法,其中RNN扮演了非常重要的作用,深度学习的应用真正让语音识别达到了商用级别。然后我想动手自己做一个语音识别系统,从GitHub上下载了两个流行的开源项目MASR和ASRT来进行复现,发现语音识别的效果没有写的那么好,其中如果要从零来训练自己的语言模型势必会非常耗时。
好好学java
2019/08/23
12K1
从零开始搭建一个语音对话机器人
分享4个实用的Python自动化脚本
大家平时有没有注意到你每天可能会执行许多地重复的任务,例如阅读 pdf、播放音乐、打开书签、清理文件夹等等。
陈晨135
2021/12/16
6190
分享4个实用的Python自动化脚本
分享6个实用的Python自动化脚本
每天你都可能会执行许多重复的任务,例如阅读 pdf、播放音乐、查看天气、打开书签、清理文件夹等等,使用自动化脚本,就无需手动一次又一次地完成这些任务,非常方便。而在某种程度上,Python 就是自动化的代名词。今天分享 6 个非常有用的 Python 自动化脚本。
somenzz
2021/12/02
2K0
分享6个实用的Python自动化脚本
FastAPI:快速开发一个文本转语音的接口
Python Web 开发方面有一个很重要的环节就是开发接口,开发接口性能最好的工具就是闪电侠 FastAPI[1],正如它的名字一样,是非常快的 API。当然,还有一些 REST API 框架,如 Django REST Framework,Flask-RESTful 等,如果以性能为首要考虑因素,那毫无疑问选择 FastAPI。
somenzz
2021/08/19
1.6K0
Python PyPDF2、pdfplumber 提取 PDF 文本、图片内容
PyPDF2 需要去 GitHub 下载 https://github.com/mstamy2/PyPDF2
全栈程序员站长
2022/09/10
3.1K0
直播读弹幕机器人制作教程:Python爬虫+文字转语音
直播读弹幕机器人是指能够实时读取直播平台上观众发送的弹幕,并将其转化为语音进行播放的机器人。这种机器人通常会使用文字转语音技术,将接收到的弹幕文本转为语音,并通过扬声器或耳机播放出来。它可以帮助主播和观众实现互动,让观众的弹幕内容以声音形式传达给主播和其他观众。
松鼠爱吃饼干
2023/09/14
1.2K0
直播读弹幕机器人制作教程:Python爬虫+文字转语音
用腾讯云语音合成(TTS)批量生成英语绘本的朗读音频
孩子进行英语启蒙,需要看很多英语绘本,而且要听配套的音频来练听力。但有些英语绘本是没有对应音频的,下面简单几步,就可以将任意英语绘本制作出对应的英语朗读音频。
AIGC部落
2024/06/23
3540
Python + edge-tts:一行代码,让你的文本轻松变成语音!
大家好,我是树先生!今天给大家介绍一个 Python 库 edge-tts,可以在本地轻松将文本转换成语音,非常方便,并且完全免费!
程序员树先生
2023/04/06
2.7K0
Python + edge-tts:一行代码,让你的文本轻松变成语音!
如何使用Python提取PDF表格及文本,并保存到Excel
PDF是一种便携式文档格式,由Adobe公司设计。因为不受平台限制,且方便保存和传输,所以PDF非常受欢迎。
IT阅读排行榜
2021/04/20
5.2K0
如何使用Python提取PDF表格及文本,并保存到Excel
相关推荐
利用 Python 将 PDF 文档转为语音音频
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档