我用漂亮的汤刮了一张带有桌子的网页。对于大多数页面来说,它可以很好地抓取网页,但在某些页面上,糟糕的HTML标签会使响应变得混乱。文本应该有一个链接(我不需要链接),但它没有,编码它的人确实留下了一个流浪</a>
而没有打开标签。这导致请求和urllib2的响应提前被切断。
我正在讨论的HTML示例:
<tr><td><small>03 Feb 2015 3:21:26 AM</small></td><td >Text with no link</a></td>
</a>
标记在响应中切断了表但没有显示,是否有任何方法可以请求页面的HTML并仅忽略所有</a>
标记(因为我需要)其他标签)?或者忽略link</a>
形式的所有字符串(因为每次出现都在特定的字符串上)。
我想我可以通过获取原始HTML来实现,但如果我使用urllib或请求他们不会给我原始HTML,他们会因为标记而切断表格并且不会显示流浪标签导致它。
解决:原始HTML可以使用此处显示的方法How to print raw html string using urllib3?获得,响应通常打印原始html但在这种情况下它不是由于错误标记,但这显示原始HTML即使坏标签。