Nokogiri用于识别页面上最大文本的策略?

时间:2013-06-30 20:09:44

标签: ruby xpath html-parsing nokogiri text-parsing

我正在对一堆登陆页面进行比较。我正试图拉出主标题和号召性用语,但当然页面的HTML格式变化很大。

我开始寻找H1,H2等,假设标题标签对应于首要位置,但通常情况并非如此。渲染的font-size *可能是一个更好的指标,但是这看起来很混乱,并且不会处理使用带有alt标签的图像的情况。

使用Nokogiri识别100个野生着陆页的主标题有什么好的策略?

*另外 - 是否有一个聪明的渲染字体大小的选择器?

1 个答案:

答案 0 :(得分:2)

除非你的AI运行可以确定文档中语义最重要的部分,否则你不能这样做。

您不能指望标记,例如标题或元标记,因为这些标记可能完全丢失。

你不能指望源中的位置,因为CSS可以在任何地方移动。

而且,即使你认为你已经通过查看CSS来固定它,JavaScript也可以从你那里扯下那个现实,因为它可以覆盖所有东西,依赖于它需要人类的眼睛和大脑来理解最终呈现的页面。

所以,基本上,你将主要在黑暗中拍摄,除非你有能够理解页面内容的代码,并确定一个单词出现的频率,以及它的同义词和它们的根词,然后确定 CSS和JavaScript运行后,它们在页面上的位置。

很多大公司都花了很多钱,这真是一项艰巨的任务。