这是一个更多的网络刮擦问题。有哪些公认的方法可以自动确定<table>是否用于布局,而对于某些您从未见过的HTML中的数据呢?
我希望能够将任何HTML文件作为字符串传递到某个函数中,该函数将HTML页面中的所有数据表突现出来,但忽略纯粹用于布局的表。但是像http://news.ycombinator.com/newcomments这样的网站使用HTML来进行布局,这使得它变得很棘手。
这个函数不应该适合任何特定网站的DOM结构,所以它应该与任何HTML字符串一起工作(或者有尽可能高的成功率)。
多年来,人们是否发现了哪些算法/检查可以区分布局和数据表?这应该是可能的,这只是一个写下所有变量和试验/错误的问题--我想很多人已经在某个地方画了出来。
我不一定需要这个函数(虽然这会很棒,但我想它需要很多微调)。只是在寻找一些尝试过的策略。
更新
这是一个很好的开始(谢谢@JaredFarrish):
发布于 2012-07-02 17:39:48
用于布局的表通常将
<th>或<thead>用于数据的表通常会
<div>、<p>;查看<b>、<strong>等并不排除数据)当您刮表时,根据这些标准对其进行评估和评分,将分数和权重应用于这些标准,并使用最后的分数来决定它是布局还是数据。
https://stackoverflow.com/questions/11298113
复制相似问题