如何正确抓取报纸 PDF
How to properly scrape newspaper PDFs
我开始觉得做我想做的事情是不可能的,但我只是想在我放弃之前在这里问一下。
我有将近 200 份报纸的存档 PDF,我想对其进行分析。但是,我想专门针对 letters 部分进行此分析,但根据广告的布局和转换方法(无论是 pdfbox 还是 pdftotext),没有真正的开始或结束我可以准确地创建正则表达式搜索的部分。
谁能想出办法做这样的事情?我已经看了一段时间,似乎唯一可靠的方法可能是手动筛选每个 pdf。
我想我只是写下我为使它正常工作所做的工作:
按照@TilmanHausherr 的说法,我正准备手动开始,分别裁剪每个页面,然后在裁剪后的页面上进行文本提取。
不过我想我也可以通过删除完全不需要的页面(其中 99%)来尽可能减少手动裁剪的数量。
因此,即使我的半自动选择不是 100% 准确 - 它们至少会减少我的手动工作,这对任何一种方式都有帮助。所以我遵循了这个过程:
使用 Acrobat,我 运行 a javascript search 将具有特定关键字的任何页面提取到新文档中。问题是这必须是一个词关键字,尽管如此,我发现一个非常独特的词“disclaimer
”出现在所有信件页面上。即使它确实捕获了另一页 - 也没关系,因为我想做的就是减少最终的手动工作。
然后我想让页面尽可能容易手动裁剪,所以知道所有图像都是不相关的,我在 14 天的试用期中使用程序 pdftoolbox使用这个疯狂的功能,它会自动将文本图像和矢量分割成不同的层,然后可以将其删除或隐藏。
这是通过转到修复菜单,搜索 create different layers for vectors..
选项并单击修复来完成的。然后一旦完成 - 转到主菜单下的 explore layers
选项并删除除文本层以外的所有内容。如您所见,它在删除任何额外的垃圾方面非常有效,几乎变得像报纸的 adblock :)
仍然有一些垃圾,但在删除所有图像后,我所要做的就是浏览几页并检查 acrobat 编辑器中是否有不相关的文本。唯一剩下的手工工作需要完成。
我觉得很有趣,当我试图使整个过程自动化时,我是如何完全坚持这一点的。但是,当我尝试尽可能减少手动工作时,我已经将 99% 的流程自动化了。
猜猜我是在下意识地制作 Perfect solution fallacy 的,当时我正试图将其自动化。
¯\_(ツ)_/¯
我开始觉得做我想做的事情是不可能的,但我只是想在我放弃之前在这里问一下。
我有将近 200 份报纸的存档 PDF,我想对其进行分析。但是,我想专门针对 letters 部分进行此分析,但根据广告的布局和转换方法(无论是 pdfbox 还是 pdftotext),没有真正的开始或结束我可以准确地创建正则表达式搜索的部分。
谁能想出办法做这样的事情?我已经看了一段时间,似乎唯一可靠的方法可能是手动筛选每个 pdf。
我想我只是写下我为使它正常工作所做的工作:
按照@TilmanHausherr 的说法,我正准备手动开始,分别裁剪每个页面,然后在裁剪后的页面上进行文本提取。
不过我想我也可以通过删除完全不需要的页面(其中 99%)来尽可能减少手动裁剪的数量。
因此,即使我的半自动选择不是 100% 准确 - 它们至少会减少我的手动工作,这对任何一种方式都有帮助。所以我遵循了这个过程:
使用 Acrobat,我 运行 a javascript search 将具有特定关键字的任何页面提取到新文档中。问题是这必须是一个词关键字,尽管如此,我发现一个非常独特的词“
disclaimer
”出现在所有信件页面上。即使它确实捕获了另一页 - 也没关系,因为我想做的就是减少最终的手动工作。然后我想让页面尽可能容易手动裁剪,所以知道所有图像都是不相关的,我在 14 天的试用期中使用程序 pdftoolbox使用这个疯狂的功能,它会自动将文本图像和矢量分割成不同的层,然后可以将其删除或隐藏。
这是通过转到修复菜单,搜索
create different layers for vectors..
选项并单击修复来完成的。然后一旦完成 - 转到主菜单下的explore layers
选项并删除除文本层以外的所有内容。如您所见,它在删除任何额外的垃圾方面非常有效,几乎变得像报纸的 adblock :)仍然有一些垃圾,但在删除所有图像后,我所要做的就是浏览几页并检查 acrobat 编辑器中是否有不相关的文本。唯一剩下的手工工作需要完成。
我觉得很有趣,当我试图使整个过程自动化时,我是如何完全坚持这一点的。但是,当我尝试尽可能减少手动工作时,我已经将 99% 的流程自动化了。
猜猜我是在下意识地制作 Perfect solution fallacy 的,当时我正试图将其自动化。
¯\_(ツ)_/¯