Python 3.x 使用Python从多个PDF文件中查找多个单词
我正在尝试编写一个Python脚本,它将加载多个PDF文件,然后搜索特定的单词 我有一个脚本,将采取1个字,然后尝试,并找到它在1 PDF,这就像这个字,是由我自己提供的。我希望将这个脚本扩展为多个单词和PDF。我知道实际需要的最终脚本需要来自os模块的附加方法,但是我对Python的了解有时有点粗略 尽管我认为这将是一项基本任务,但谷歌一直让我失望,似乎我对一个具体问题问得太多了,因此我来这里的原因 到目前为止,我所拥有的:Python 3.x 使用Python从多个PDF文件中查找多个单词,python-3.x,pypdf2,Python 3.x,Pypdf2,我正在尝试编写一个Python脚本,它将加载多个PDF文件,然后搜索特定的单词 我有一个脚本,将采取1个字,然后尝试,并找到它在1 PDF,这就像这个字,是由我自己提供的。我希望将这个脚本扩展为多个单词和PDF。我知道实际需要的最终脚本需要来自os模块的附加方法,但是我对Python的了解有时有点粗略 尽管我认为这将是一项基本任务,但谷歌一直让我失望,似乎我对一个具体问题问得太多了,因此我来这里的原因 到目前为止,我所拥有的: import PyPDF2 as PDF #import pdf m
import PyPDF2 as PDF #import pdf module
import re
p = PDF.PdfFileReader("UserJoe.pdf")
# get number of pages
NumPages = p.getNumPages()
#define keyterms; David, Final, End, Score, Birthday, Hello Ben
kTerm = "David, Final, End, Score, Birthday, Hello Ben"
#extract text and do the search
for i in range(0, NumPages):
PageObj = p.getPage(i)
print("Looking through page " + str(i))
Text = PageObj.extractText()
Result = re.search(kTerm,Text)
if Result:
print(f"{kTerm} found")
else:
print("0")
所以这个脚本可以工作,但不是我想要的。它只会搜索“David”,但不会搜索整个术语串,这正是我想要的。为了重复这一点,我希望它可以用于多个PDF文件,而不仅仅是1个,其中我必须提供文件名
非常感谢您的帮助您的搜索词是错误的
re.search(kTerm,Text)
将kTerm
解释为正则表达式。您将kTerm定义为“David,Final,End,Score,Birth,Hello Ben”,它正在查找David,Final,End,Score,Birth,Hello Ben的确切匹配项。可以将“,”替换为管道符号(“|”),该符号类似于或。如果你这样做
kTerm = "David, Final, End, Score, Birthday, Hello Ben".replace(", ", "|")
这是
“David | Final | End | Score | Birthday | Hello Ben”
您可以搜索“David”或“Final”或“End”或…当我运行上述代码时,我需要滚动输出以查找找到单词的行。我希望包含单词的行被打印或保存为单独的文件,或者包含行的页面被保存为单独的pdf或txt文件。提前感谢您的帮助OK,它提供了多个关键术语,您只需了解如何将其用于多个PDF文件。不过帮了大忙