gpt4 book ai didi

python - 是否有任何 python 包可以很好地从 RTL 语言的 PDF 中提取文本?

转载 作者:行者123 更新时间:2023-12-03 23:15:37 24 4
gpt4 key购买 nike

我使用过著名的 Python 包来处理 PDF 文件,比如 PDFminer、PyMuPDF、PyPDF2 等等。但是他们都不能从 中编写的 PDF 文件中正确提取文本。从右到左的语言 (波斯语、阿拉伯语)。
例如:

import fitz
doc = fitz.open("*/path/to/file.pdf")
txt = doc.getPageText(0)
print(txt)
它返回如下内容:

...

اﯾﻨﺘﺮﻧﺖ و ﮐﺎﻣﭙﯿﻮﺗﺮ ﺑﻪ ﻣﺴﻠﻂ

ﻣﺴﻠﻂ ﻫﺎیزﺑﺎن

...


有时单词被颠倒了(第一个字符在最后)并且单词在句子中被交换,有时单词被正确写入。但它不知道如何处理波斯语中常用的零宽度非连接器 (نیم‌فاصله)。
我尝试了很多,但一无所获。提前感谢您的帮助。

最佳答案

我遇到了这个问题,我写了以下代码:

import sys
from builtins import print
import fitz

input_file = "p.pdf"
line_list = []

doc = fitz.Document(input_file)
page_count = doc.pageCount

for i in range(page_count):
load_page = doc.loadPage(i)
page = load_page.getText() # read a page
page = str(page)
line_list.append(page.splitlines()) # split every page based on \n

for j in range (len(line_list)):
for k in range(3):
line_list[j][k] = line_list[j][k][::-1]
print(line_list[j][k])
但是这个包有两个问题。 1)颠倒单词(例如“سلام”->“مالس”)我在这段代码中解决了它。 2) 多语言文档有问题,比如波斯语和英语。

关于python - 是否有任何 python 包可以很好地从 RTL 语言的 PDF 中提取文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51511345/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com