乐趣区

关于python:Python-读取PDF文件为文本字符并转换为音频

【浏览全文】

设计思路:首先通过 PyPDF2 非标准库提供的接口函数将 PDF 文件中的文本提取进去,而后,再应用 pyttsx3 非标准库将文本转换为音频文件。

应用 pip 的形式装置两个非标准库 PyPDF2、pyttsx3。

pip install PyPDF2 -i https://pypi.tuna.tsinghua.edu.cn/simple/

pip install pyttsx3 -i https://pypi.tuna.tsinghua.edu.cn/simple/

将这两个须要应用到的非标准库导入到以后代码块中。

import pyttsx3 as tsx
import PyPDF2 as pdf

编写 PDF 文件读取函数并且返回 text 文本字符串。

def read_pdf_to_txt(pdf_file):
    '''
    读取 PDF 文件返回 text 文本
    :param pdf_file: PDF 文件门路
    :return:
    '''reader = pdf.PdfFileReader(open(pdf_file,'rb'))
    texts = ''
    for page_num in range(reader.numPages):
        text = reader.getPage(page_num).extractText()
        text = text.strip().replace('\n', ' ')
        texts = texts + text
    return texts


def to_video(text):
    '''
    文本转换为音频函数
    :param text: 文本字符串
    :return:
    '''
    sp = tsx.init()
    sp.save_to_file(text, './vi.mp3')
    sp.runAndWait()
    sp.stop()

调用 to_video 函数实现音频文件的转换。

to_video(text=read_pdf_to_txt('./vi.pdf'))

【往期精彩】

python 获取最新房价信息 - 以北京房价为例

办公自动化:Image 图片转换成 PDF 文档存储 …

python 做一个微型美颜图片处理器,十行代码即可实现 …

用 python 做一个文本翻译器,主动将中文翻译成英文,超不便的!

小王,给这 2000 个客户发一下节日祝愿的邮件 …

python 一行命令开启网络间的文件共享 …

PyQt5 批量删除 Excel 反复数据,多个文件、自定义反复项一键删除 …

再见 XShell,这款国人开源的终端命令行工具更 nice!

python 表情包下载器,轻松下载上万个表情包、斗图不必愁 …

Python 主动清理电脑垃圾文件,一键启动即可 …

有了 jmespath,解决 python 中的 json 数据就变成了一种享受 …

解锁一个新技能,如何在 Python 代码中应用表情包 …

退出移动版