为了账号安全,请及时绑定邮箱和手机立即绑定

如何识别css内联属性

如何识别css内联属性

千巷猫影 2021-09-14 21:11:24
在我抓取的网页中,有很多标题,我需要识别它们以在我的数据库中设置一个值。问题是这些标题没有特定的 ID 或类。他们遵循这些模式:<p ALIGN="CENTER"><font face="Arial" SIZE="2"><a name="tituloivcapituloisecaoii"></a><b><span style="text-transform: uppercase">Seção II<br>DAS ATRIBUIÇÕES DO CONGRESSO NACIONAL</span></b></font></p><p ALIGN="CENTER"><font face="Arial" SIZE="2"><a name="tituloivcapituloisecaoiii"></a><b><span style="text-transform: uppercase">Seção III<br>DA CÂMARA DOS DEPUTADOS</span></b></font></p>标识它们的一个属性是:text-trasform: uppercase.如何检查是否p包含一个标题?这是我当前的代码:soup = BeautifulSoup(f, 'html.parser')for tag in soup.findAll():    if tag.name in ['a', 'strike']:      tag.decompose()allp = soup.findAll('p')for p in allp:             print(p)
查看完整描述

1 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

按标签类型解析 html 后,您可以使用任何定义属性在标签内进行搜索。该text-transform:uppercase可在这种情况下使用。


soup = BeautifulSoup(f, 'html.parser')

for p in soup.find_all("p"):

    if p.span["style"]=="text-transform: uppercase":

        title=p.text

        print(title)


>>>Seção IIDAS ATRIBUIÇÕES DO CONGRESSO NACIONAL

这将找到所有<p>包含<span>标签的标签,style=="text-transform: uppercase"并打印它们的相关文本。


查看完整回答
反对 回复 2021-09-14
  • 1 回答
  • 0 关注
  • 161 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信