您有很多 PDF 需要阅读,但没有时间?所以这个解决方案在这篇文章中。您可以将任何 PDF 转换为音频,并在做其他事情的同时收听它。
1.简介
作为学生、科学家或任何喜欢阅读的人。我们几乎每天都阅读 PDF。它可以是一个故事、一本书、一篇论文……
但有时,我们会厌倦阅读所有的 PDF,尤其是像我这样的懒人。为此,我们更喜欢听那个 PDF 而不是阅读它。
通过这样做,我们将使生活更轻松,这样您就可以将 PDF 转换为音频,并且您可以在做运动或其他事情时收听它。
在这篇小文章中,我将向您展示如何使用 几行Python 代码来做到这一点。
2.步骤
要完成这项工作,您只需执行两个步骤,第一个是从 PDF 中提取文本并将其作为字符串,然后使用简单的库将该字符串转换为音频。
2.1 提取文本
为此,我们需要安装一个名为PyPDF2
的库,它可以读取任何 PDF 并将其转换为字符串。所以要安装这个库,你可以通过输入以下行来使用终端:pip install pypdf2
现在该库已安装,现在来提取文本:
import pyPDF2
book = open("pdf文件", "rb")
read_file = pyPDF2.PdfFileReader(book)
使用python的open函数,并将文件作为二进制文件打开(参数rb
表示读取二进制文件)。
下一步是我们应该使用以下函数指定要从中提取文本的页面:
page = read_file.getPage(5) # 这里选择提取第五页文本
最后,要从所选页面中提取文本,我们需要这行代码:
text = page.extractText()
2.2将文本转换为音频
在您了解了如何从 PDF 中提取文本之后,我将向您展示如何通过几个步骤将该文本转换为音频。
import pyttsx3
speaker = pyttsx3.init()
speaker.say(text)
speaker.runAndWait()
从导入 pyttsx3
库开始,我们需要初始化扬声器。完成此操作后,您只需调用函数say
,该函数将在其参数中接收一个字符串,然后将其转换为音频。
最后,您必须通过调用函数runAndWait
来运行扬声器。
如果您想一次转换整个 PDF,那么您可以创建一个循环,在 PDF 的所有页面上循环。
参考目录
https://pycad.co/how-to-convert-a-pdf-into-an-audio/