生活
pypdf2 、pypdf2读取文字乱码
2023-04-11 00:12  浏览:28

如何正确连接python中的两个函数

def openFile1(self):

pathFileName, _ = QtWidgets.QFileDialog.getOpenFileName(None, 'Wybierz plik', '', 'pdf(*.pdf)')

print("PathFileName-'{}', n_-'{}'".format(pathFileName, _))

if pathFileName:

print("Wybrany plik: ", pathFileName)

g = open(pathFileName, 'rb')

return g

def openFile2(self):

pathFileName, _ = QtWidgets.QFileDialog.getOpenFileName(None, 'Wybierz plik', '', 'pdf(*.pdf)')

print("PathFileName-'{}', n_-'{}'".format(pathFileName, _))

if pathFileName:

print("Wybrany plik: ", pathFileName)

h = open(pathFileName, 'rb')

return h

def laczeniePdf(self,g, h):

readerlinkPage1 = PyPDF2.PdfFileReader(open(g, 'rb'))

readerlinkPage2 = PyPDF2.PdfFileReader(open(h, 'rb'))

writerlinkPage = PyPDF2.PdfFileWriter()

OutputFile = open('FinalOutput.pdf', 'wb')

writerlinkPage.appendPagesFromReader(readerlinkPage1)

writerlinkPage.appendPagesFromReader(readerlinkPage2)

writerlinkPage.write(OutputFile)

OutputFile.close()

怎样利用python将pdf转换成jpg格式

可以用第三方库wand实现(我的环境:win10、python3)

需要安装wand 、imagemagick和ghostscript

wand的安装很简单:直接cmd 运行pip install wand

然后安装imagemagick ,从这里下载网页链接,注意是32位还是64位,这个需要和python的位数一致。

安装过程注意勾选Install development headers and libraries for C and C++ 。安装后设置MAGICK_HOME环境变量,值为imagemagick的安装路径,并将安装路径加入path。

详情可参照此页面网页链接。

最后安装ghostscript,这里下载网页链接,选择AGPL release,注意32位还是64位。

安装过程很简单,一路点击next,如果不想安装在c盘,可以改变安装路径,这个没有影响。

最后上代码(很简单):

#-*- coding:utf-8 -*-

from wand.image import Image

with Image(filename="pdf_file_name",resolution=300) as img:

    img.format = 'jpeg'

    img.save(filename='converted.jpg')

上面的pdf_file_name输入要处理的pdf文件名,最后会在当前目录下生成converted.jpg

说明:这几行代码比较简单,处理页数较少的pdf还行,页数太多会卡住。但是可以用pyPDF2分割pdf然后转换,这是一种思路,关于pyPDF2的教程自行百度吧。

fme报错no module name pypdf2

笔者实操时遇到“ModuleNotFoundError: No module named ‘numpy’”报错,查询了一下有的是通过cmd使用pip安装numpy库,但经个人测试,没有成功。后经查询和测试可在PyCharm中直接安装numpy库(可能是3.X的版本特性)。***步:点击preferences第二步:点击Project目录下的

python导入pypdf2模块后没有提示

最近在学习Python,使用pycharm时,发现导入自己写的功能模块时pycharm不能智能提示,感觉很苦恼,原来是pycharm不会将当前的工作目录加入到自己的sourse_root中解决办法有两种,本文只具体介绍最简单的一种,

解决办法如下

/1、在Pycharm界面中右击你想要导入模块的py文件夹,选择Make Diretory as

/2、然后选择Sourse Root

3、这样你导入的模块就有智能提示了!!!

方法2

File–setting–project:你的工程名–project structure–选中上方的Sourse–点击ADD content root手动添加即可。

我用pypdf2填充了一个pdf的表单域值,但是输出的pdf不显示这个值,要点一下才显示,怎么回事

PDF和PS一样都有图层概念的,你只需要打开图层选项(默认左侧菜单第三项),将没有显示的图层选上就成(就是那个小眼睛),或者合并图层即可。

pdf转音频的原理

这个功能的实现需要使用到pyttsx3以及PyPDF2这两个第三方库,它们一个的作用是将文本转为音频播放,另一个的作用就是操作pdf文件从里面取出文本。通过pip工具在命令行执行install命令将其安装好再创建一个python脚本将其导入,示例如下:

import pyttsx3,PyPDF2

2.所需要使用到的库导入之后,调用pypdf库中读取pdf文件的方法将这个文件给打开然后取出里面的所有页,pdf是通过每一页的格式来保存数据的。然后还需要调用init()方法实例化出来一个音频文件操作对象,示例如下:

pdfreader = PyPDF2.PdfFileReader(open('story.pdf','rb'))

speaker = pyttsx3.init()

3.构建一个for循环结构,循环的次数为range()函数根据pdf文件页数所生成的列表长度。然后再循环之中对pdf文件的每一页进行识别并将文本给提取出来,并且对文本进行取出空格和换行符的处理。

处理完毕之后还需要创建一个mp3格式的音频文件并且将文本给写入进去,然后调用runAndWait()方法来将文本转为语音播放。最后在循环完毕之后关闭音频文件即可,详细代码示例如下:

for page_num in range(pdfreader.numPages):

text = pdfreader.getPage(page_num).extractText()

cleaned_text = text.strip().replace('n',' ')

speaker.save_to_file(cleaned_text,'story.mp3')

speaker.runAndWait()

speaker.stop()

以上就是关于“PDF怎么转音频?Python如何将pdf文本以音频播放出来”的全部内容了,希望对你有所帮助。

pypdf2的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于pypdf2读取文字乱码、pypdf2的信息别忘了在本站进行查找喔。

发表评论
0评