用python将pdf转化为有声读物

 更新时间:2022年02月13日 08:45:30   作者:中意灬  
大家好,本篇文章主要讲的用python将pdf转化为有声读物,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下

现在看小说已经有了听书这个功能了,但是有时候你想看的书的听书功能收费,这时候可能大家就只能老老实实选择看或者付费听。

(还能拿来练英语听力欸嘿嘿) 

于是我想到,可不可以用python来实现语言播报呢,说干就干,通过上网搜索,发现python中pyttsx3这个模块可以实现语音播报,而pdfplumber或PyPDF2模块实现pdf转化为文字,我采用的是pdfplumber这个模块。

首先我们先下载模块,可以自己pip install 模块名,或者通过清华源下载(会更快)

清华源地址:https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

 然后我们将所需要的pdf文件添加到代码同一个文件夹下(方便调用,也可以使用绝对路径)

代码

# @Time:2022/2/120:29
# @Author:中意灬
# @File:有声读物.py
# @ps:tutu qqnum:2117472285
import pyttsx3
import pdfplumber
pdf=pdfplumber.open(input('请输入书名:'))
pg_no=int(input("请输入你想从第几页读着走:"))
#总页数
numpages=len(pdf.pages)
for num in range((pg_no-1),numpages):
    #获取指定文章页数位置的内容
    first_page=pdf.pages[num]
    #获取文本内容
    text=first_page.extract_text()
    #初始化
    speaker=pyttsx3.init()
    #去掉文章中的换行符
    text=text.replace('\n','')
    #调整人声类型,voice[0]为中文女声,可自己切换其他的,但注意英文女声无法读取中文
    voices=speaker.getProperty('voices')
    speaker.setProperty('voice',voices[0].id)
    #调整语速
    rate=speaker.getProperty('rate')
    speaker.setProperty('rate',150)
    #调整音量,单位为0-1
    volume=speaker.getProperty('volume')
    speaker.setProperty('volume',1)#欸嘿,我没调
    #读
    speaker.say(text)
    #保存音频
    # speaker.save_to_file(text, 'T1.mp3')
    speaker.runAndWait()

运行结果:

 无法上传音频,所以大家听不到了,就是机械女生的声音,没啥好听的

 但是大家可以自己下载语言包,下载自己喜欢的语言包,比如甜美弯弯腔。

到此这篇关于用python将pdf转化为有声读物的文章就介绍到这了,更多相关python pdf转为mp3内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python socket处理client连接过程解析

    Python socket处理client连接过程解析

    这篇文章主要介绍了Python socket处理client连接过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • pytorch中节约显卡内存的方法和技巧

    pytorch中节约显卡内存的方法和技巧

    显存不足是很多人感到头疼的问题,毕竟能拥有大量显存的实验室还是少数,而现在的模型已经越跑越大,模型参数量和数据集也越来越大,所以这篇文章给大家总结了一些pytorch中节约显卡内存的方法和技巧,需要的朋友可以参考下
    2023-11-11
  • python使用collections模块的容器数据类型高效处理数据

    python使用collections模块的容器数据类型高效处理数据

    这篇文章主要为大家介绍了python使用collections模块的容器数据类型高效处理数据的方法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • Python time.time()方法

    Python time.time()方法

    这篇文章主要介绍了详解Python中time.time()方法的使用的教程,是Python入门学习中的基础知识,需要的朋友可以参考下,希望能给你带来帮助
    2021-08-08
  • Python获取中国节假日数据记录入JSON文件

    Python获取中国节假日数据记录入JSON文件

    项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:Python获取中国节假日数据记录入JSON文件
    2025-04-04
  • Python内置函数hex()的实现示例

    Python内置函数hex()的实现示例

    这篇文章主要介绍了Python内置函数hex()的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • Django集成Redis数据库的操作指南

    Django集成Redis数据库的操作指南

    本文将详细介绍如何在 Django 项目中集成 Redis 数据库,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • python实现linux下使用xcopy的方法

    python实现linux下使用xcopy的方法

    这篇文章主要介绍了python实现linux下使用xcopy的方法,可实现模仿windows下的xcopy命令功能,需要的朋友可以参考下
    2015-06-06
  • Python+ChatGPT制作一个AI实用百宝箱

    Python+ChatGPT制作一个AI实用百宝箱

    ChatGPT最近在互联网掀起了一阵热潮,其高度智能化的功能能够给我们现实生活带来诸多的便利。本文就来用Python和ChatGPT制作一个AI实用百宝箱吧
    2023-02-02
  • python机器学习库常用汇总

    python机器学习库常用汇总

    这篇文章主要为大家汇总了常用python机器学习库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-11-11

最新评论