我希望能够从pdf文件中提取特定的文本以及其位置。
我知道xpdf和mupdf可以解析pdf文件,所以我认为它们可以帮助我完成这个任务。
但是如何使用这两个库来获取文本位置呢?
我知道xpdf和mupdf可以解析pdf文件,所以我认为它们可以帮助我完成这个任务。
但是如何使用这两个库来获取文本位置呢?
import fitz # the PyMuPDF module
doc = fitz.open("input.pdf") # PDF input file
page = doc[n] # page number n (0-based)
wordlist = page.getTextWords() # gives you a list of all words on the
# page, together with their position info (a rectangle containing the word)
# or, if you only are interested in blocks of lines belonging together:
blocklist = page.getTextBlocks()
# If you need yet more details, use a JSON-based output, which also gives
# images and their positions, as well as font information for the text.
tdict = json.loads(page.getText("json"))
如果您感兴趣,我们在GitHub上有相关内容。
Mupdf带有几个工具,其中之一是pdfdraw
。
如果您使用-tt
选项的pdfdraw,它将生成一个包含所有字符及其精确定位信息的XML
。
从那里,您应该能够找到所需的内容。