html – 为什么Google不关闭表格中的td和tr标签?

HTML的源代码

http://www.google.com/finance/historical?cid=983582&startdate=Nov+28,+2010&num=200

我看到谷歌永远不会关闭td和tr标签.没有< / tr>没有< / td>在源头.

为什么?

<tr class=bb>
<th class="bb lm">Date
<th class="rgt bb">Open
<th class="rgt bb">High
<th class="rgt bb">Low
<th class="rgt bb">Close
<th class="rgt bb rm">Volume
<tr>
<td class="lm">Nov 26,2010
<td class="rgt">11,183.50
<td class="rgt">11,067.17
<td class="rgt">11,092.00
<td class="rgt rm">68,396,121
<tr>

难道解析它是因为XML解析器无法读取它吗?我已经注意到& output = csv不适用于索引(此网址不起作用:http://www.google.com/finance?q=INDEXDJX:.DJI&output=csv),而它可用于库存(http://www.google.com/finance/historical?q=NASDAQ:GOOG\u0026amp ; output = csv将起作用)以便在csv中获取索引的历史数据,你必须做解析工作!

解决方法

这是HTML4(而不是XML).正如 W3 specs所指出:

11.2.6 Table cells: The TH and TD elements

Start tag: required,End tag: optional

同上tr:

11.2.5 Table rows: The TR element

Start tag: required,End tag: optional

我相信目的是通过省略结束标记来最小化页面大小.他们进行各种额外的优化,这些优化实际上可能导致无效的HTML,但是在tagsoup mode中由浏览器处理.

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些