小工具随手记:使用Python中的pyttsx3包将PDF文档转为MP3音频

简介: 小工具随手记:使用Python中的pyttsx3包将PDF文档转为MP3音频

         今天不想看文档了,搞了个简易版本的朗读PDF程序,效果一般般,和microsoft自带的那个朗读功能一样。

需要安装pyttsx3和PyPDF2:

image.gif

如需配置国内镜像源请参考:Pycharm配置镜像源(长期有效)_蓝多多的小仓库-CSDN博客

代码如下:

import pyttsx3,PyPDF2
# 打开需要读取的PDF
pdfreader = PyPDF2.PdfFileReader(open('../source/paper.pdf','rb'))
# 初始化获取语音引擎
speaker = pyttsx3.init()
for page_num in range(pdfreader.numPages):
    # 从PDF中提取文本
    text = pdfreader.getPage(page_num).extractText()
    # 去掉文本中的换行符
    cleaned_text = text.strip().replace('\n',' ')
    # 调整人声类型
    voices = speaker.getProperty('voices')
    speaker.setProperty('voice', voices[1].id)
    # 调整语速
    rate = speaker.getProperty('rate')
    speaker.setProperty('rate', 100)
    # 调整声量
    volume = speaker.getProperty('volume')
    speaker.setProperty('volume', 0.8)
    # 将格式为mp3的音频保存
    speaker.save_to_file(cleaned_text,'../source/paper.mp3')
    speaker.runAndWait()
speaker.stop()

image.gif

结果(可以凑活听,效果一般):

image.gif

相关文章
|
17天前
|
Python 开发工具
2024年Python最全使用Python实现音频双通道分离,2024年最新阿里p7面试难度
2024年Python最全使用Python实现音频双通道分离,2024年最新阿里p7面试难度
2024年Python最全使用Python实现音频双通道分离,2024年最新阿里p7面试难度
|
7天前
|
数据挖掘 程序员 数据安全/隐私保护
解锁PDF潜力:9个Python库让你的文档处理更高效
程序员晚枫分享了Python处理PDF的9个第三方库,包括PyPDF2、pdfrw、ReportLab、pikepdf、pdfplumber、pdfminer.six、PyMuPDF、popdf和borb,各具优缺点。选择时需考虑应用场景、功能需求、库的维护状态和开源协议。例如,pdfplumber擅长内容提取,而ReportLab和PyMuPDF适用于创建和修改内容。
|
2天前
使用LabVIEW打开默认应用程序中的文档(PDF,Word,Excel,Html)
使用LabVIEW的"Open a Document on Disk.vi",存于<LabVIEW>\vi.lib\Platform\browser.llb,可让默认应用打开硬盘文档。此VI仅基础打开功能,高级控制推荐LabVIEW Report Generation Toolkit或ActiveX。注意:避免版本升级问题,最好将VI复制到vi.lib外的目录。
|
6天前
|
Python
Python文件的异常、模块与包
Python文件的异常、模块与包
11 3
|
6天前
|
Python
小白入门必备!计科教授的Python精要参考PDF开放下载!
随着互联网产业的高速发展,在网络上早已积累了极其丰富的Python学习资料,任何人都可以基于这些资源,自学掌握 Python。 但实际上,网络上充斥的资源太多、太杂且不成体系,在没有足够的编程/工程经验之前,仅靠“看”线上资源自学,的确是一件非常困难的事。
|
6天前
|
IDE 开发工具 开发者
Python函数说明文档:编写清晰易懂的文档字符串
Python函数说明文档:编写清晰易懂的文档字符串
8 1
|
12天前
|
Python
Python中的模块与包——深入理解与应用
Python中的模块与包——深入理解与应用
小白入门必备!计算机科学教程的Python精要参考PDF开放下载!
随着互联网产业的高速发展,在网络上早已积累了极其丰富的Python学习资料,任何人都可以基于这些资源,自学掌握 Python。 但实际上,网络上充斥的资源太多、太杂且不成体系,在没有足够的编程/工程经验之前,仅靠“看”线上资源自学,的确是一件非常困难的事。
|
16天前
|
Python
python(pip)包/模块:如何离线安装?
python(pip)包/模块:如何离线安装?
11 0
|
17天前
|
Python
2024年最全用Python和PIL美化图像:文本覆盖技术实战,Python高级面试题pdf
2024年最全用Python和PIL美化图像:文本覆盖技术实战,Python高级面试题pdf