python – 美丽的汤结果缺少部分
发布时间:2020-12-20 12:23:17 所属栏目:Python 来源:网络整理
导读:我正在尝试检索一些 p以下html代码中的标记.这里只是其中的一部分 td class="eelantext" a class="fBlackLink"/a center/center span … /spanbr/br table width="402" vspace="5" cellspacing="0" cellpadding="3" border="0" bgcolor="#ffffff" align="Lef
我正在尝试检索一些< p>以下html代码中的标记.这里只是其中的一部分
<td class="eelantext"> <a class="fBlackLink"></a> <center></center> <span> … </span><br></br> <table width="402" vspace="5" cellspacing="0" cellpadding="3" border="0" bgcolor="#ffffff" align="Left"> <tbody> … </tbody></table> <!--edstart--> <p> … </p> <p> … </p> <p> … </p> <p> … </p> <p> … </p> </td> 你可以找到网页here 我的Python代码如下 soup = BeautifulSoup(page) div = soup.find('td',attrs={'class': 'eelantext'}) print div text = div.find_all('p') 但是text变量是空的,如果我打印div变量,除了< p>之外,我有完全相同的html.标签. 解决方法
BeautifulSoup可以使用
different parsers to handle HTML input.这里的HTML输入有点破,默认的HTMLParser解析器不能很好地处理它.
请改用 >>> len(BeautifulSoup(r.text,'html').find('td',attrs={'class': 'eelantext'}).find_all('p')) 0 >>> len(BeautifulSoup(r.text,'lxml').find('td','html5lib').find('td',attrs={'class': 'eelantext'}).find_all('p')) 22 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |