我经常需要从缺乏良好,组织良好的API的Web界面中提取数据。作为一个玩具示例,请考虑J! Archive,一系列危险问题。
正确的游戏ID如下所示:
http://www.j-archive.com/showgame.php?game_id=2485
而不完整的游戏看起来像:
http://www.j-archive.com/showgame.php?game_id=1032
如果我想提取问题,我会查看DOM并查找感兴趣的标记元素,例如:
<td class="clue">
...
<td class="clue_value">$200</td>
<td class="clue_order_number"><a href="suggestcorrection.php?clue_id=131201" title="Suggest a correction for this clue" rel="nofollow">22</a></td>
绝大多数游戏都是#34;正确的游戏&#34;,因为返回的页面具有相同的DOM结构。 在这个特殊情况中,很明显我可以搜索某些特定的类,但是先验我不知道在哪里看。 有没有办法以编程方式确定这个DOM结构,这个结构对于一个大的子集来说是最常见的,所以我可以很容易地找到底层html中的真实数据?