小编Ram*_*kar的帖子

如何使用 PDFPlumber 从两列 PDF 中提取文本

我正在使用 python 进行主题建模任务,我想从年度/可持续性报告中提取文本。然而我的问题是,当我尝试提取报告时,提取的行在页面中的两个不同列之间断开,即它连接相邻段落中的两个不同行以构成一个句子。如何按照报告中的显示方式准确提取行。我已附上报告的版本和函数提取的行。

\n

下面是我使用的函数:

\n

#从url获取pdf的函数

\n
def converter(url):\n    text=[]\n    req= requests.get(url)\n    with pdfplumber.open(BytesIO(req.content)) as pdf:\n        for i in range(0, len(pdf.pages)):\n            pages= pdf.pages[i]\n            text.append(pages.extract_text())\n    return "\\n".join(str(i) for i in text)\n
Run Code Online (Sandbox Code Playgroud)\n

该图像是我正在提取的报告中的一个片段,报告中的文本分为两列,而 extract_content 函数将这两列混合起来得到一行,即将两列中的行连接起来并显示为一行。

\n

这是报告的第一行(第一列和第二列的开头由函数合并在一起):

\n
\n

\\n2019 年我的首要职责之一是接受采访。当我们\n在 2016 年\n开始新的战略时期\xe2\x80\x9c早安挪威\xe2\x80\x9d节目\n进行谈话时,我表示希望AF 会感到 \\n关于 AF\xe2\x80\x99s\n当我们\n希望超越 \\n女性时,将同样紧密结合的百分比增加一倍的目标

\n
\n

如果我能按照报告中给出的确切方式提取句子,那将会很有帮助。

\n

python text-extraction information-extraction topic-modeling pdfplumber

5
推荐指数
1
解决办法
2447
查看次数