解析 PDF 文档
Parsing PDF documents
我会在下面的link中尝试pdf模块。假设可行,我的问题是:
有没有一种方法可以像合同一样存储大型文本文档,并且能够同时查询许多文档中的信息?
例如,我想查询终止日期或定价,然后能够阅读该部分的合同列表。
为此我使用了 pyPDF 库(直接来自 activeState 网页):
import pyPdf
def getPDFContent(path):
content = ""
# Load PDF into pyPDF
pdf = pyPdf.PdfFileReader(file(path, "rb"))
# Iterate pages
for i in range(0, pdf.getNumPages()):
# Extract text from page and add to content
content += pdf.getPage(i).extractText() + "\n"
# Collapse whitespace
content = " ".join(content.replace("\xa0", " ").strip().split())
return content
print getPDFContent("test.pdf")
这应该是开始的好地方。我用它来自动测试创建的 PDF。
也许更适合您问题的更好方法是使用 Microsoft 的 SQL 服务器。他们对文档进行全文搜索(搜索 "SQL Server Full text search on pdf")。如果您可以加载 SQL 服务器上的所有文档,您就可以开始使用全文搜索来获取您想要的信息。这可能比上面的更容易和更灵活。
我会在下面的link中尝试pdf模块。假设可行,我的问题是:
有没有一种方法可以像合同一样存储大型文本文档,并且能够同时查询许多文档中的信息?
例如,我想查询终止日期或定价,然后能够阅读该部分的合同列表。
为此我使用了 pyPDF 库(直接来自 activeState 网页):
import pyPdf
def getPDFContent(path):
content = ""
# Load PDF into pyPDF
pdf = pyPdf.PdfFileReader(file(path, "rb"))
# Iterate pages
for i in range(0, pdf.getNumPages()):
# Extract text from page and add to content
content += pdf.getPage(i).extractText() + "\n"
# Collapse whitespace
content = " ".join(content.replace("\xa0", " ").strip().split())
return content
print getPDFContent("test.pdf")
这应该是开始的好地方。我用它来自动测试创建的 PDF。
也许更适合您问题的更好方法是使用 Microsoft 的 SQL 服务器。他们对文档进行全文搜索(搜索 "SQL Server Full text search on pdf")。如果您可以加载 SQL 服务器上的所有文档,您就可以开始使用全文搜索来获取您想要的信息。这可能比上面的更容易和更灵活。