gpt4 book ai didi

html - 测试 HTML 表格是否用于布局与数据?

转载 作者:可可西里 更新时间:2023-11-01 13:15:13 25 4
gpt4 key购买 nike

这更像是一个网络抓取问题。自动确定 <table> 是否为公认的方法是什么?用于布局还是用于数据 在您以前从未见过的一些 HTML 文档中?

我希望能够将任何 HTML 文件作为字符串传递到某个函数中,该函数在 HTML 页面中吐出所有数据表,但忽略纯粹用于布局的表。但是像 http://news.ycombinator.com/newcomments 这样的网站使用 HTML 表格进行布局,这使得它变得棘手。

此函数不应该针对任何特定网站的 DOM 结构进行定制,因此它应该适用于任何 HTML 字符串(或者具有尽可能高的成功率)。

人们多年来是否发现了可以区分布局和数据表的算法/检查?这应该是可能的,这只是写下所有变量和试错的问题——我想很多人已经在某个地方规划好了。

我不一定需要该功能(虽然那会很棒,但我想它需要大量微调)。只是在寻找一些尝试过的策略。

更新

这是一个好的开始(感谢@JaredFarrish):

最佳答案

用于布局的表格一般会

  • 行数很少,每行的单元格也很少。
  • 单元格中的内容长度极不一致
  • 单元格中有很多 HTML
  • 可以使用 colspan/rowspan
  • 位于 DOM 顶部附近
  • 不使用<th><thead>
  • 包含其他表格

用于数据的表格一般会

  • 有更多的行和每行更多的单元格
  • 单元格中的内容长度相当一致
  • 单元格内缺乏结构化 HTML(如 <div><p>;参见 <b><strong> 等不排除数据)
  • 可能不使用 colspan 并且很可能不使用 rowspan
  • 不包含其他表格

当您抓取表格时,根据这些标准对其进行评估和评分,对它们应用分数和权重,并使用最终分数来决定它是布局还是数据。

关于html - 测试 HTML 表格是否用于布局与数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11298113/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com