如何解决已解决 - TypeError: 'PpmImageFile' 对象不可迭代
我正在尝试遍历文件夹中的 pdf 文件,通过遍历每个 pdf 的页面将 pdf 转换为图像,从 pdf 生成 txt 文件,然后组合 txt 文件以生成最终的 txt 文件,从而对每个文件进行 OCR . 它适用于第一个 pdf 文件,从文件的所有页面生成文本文件并组合文本文件以生成第一个 pdf 的最终 txt 文件,但是当它转到第二个 pdf 时,它会产生迭代错误。
代码是这样的:
if os.path.isfile(filename):
try:
pages = convert_from_path(filename,500,poppler_path=r'C:\Users\T\poppler-0.68.0_x86\poppler-0.68.0\bin')
image_counter = 1
for page in pages:
filename = "page_"+str(image_counter)+".jpg"
page.save(filename,'JPEG')
image_counter = image_counter + 1
filelimit = image_counter-1
outfile = filetowritename+".txt"
f = open(outfile,"a")
for i in range(1,filelimit + 1):
filename = "page_"+str(i)+".jpg"
text = str(((PyTesseract.image_to_string(Image.open(filename)))))
text = text.replace('-\n','')
f.write(text)
f.close()
except:....
错误是这样的:
TypeError: 'PpmImageFile' object is not iterable
我在这里阅读了一些关于“TypeError: 'int' object is not iterable”的问答,但无法理解我的代码的问题。
编辑:
问题是我试图遍历一个非列表项。 我将代码更改为此,它起作用了:
pages = convert_from_path(filename,poppler_path=r'C:\Users\T\poppler-0.68.0_x86\poppler-0.68.0\bin')
pageZ = []
image_counter = 1
for page in range(0,len(pages)):
...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。