我正在使用library_Beautiful Soup在python中编写代码,我想选择这个标签(使用CSS Selector):
<div>
...
<div>
...
<div style=" height:80px; width:700px; ">
...
我正在尝试:
soup.select('div div div[style*="height:80px; width:700px"]')
(CSS选择器在单引号内,即
'div div div[style*="height:80px; width:700px"]')
但是这不会选择任何标签。
我也尝试过:
soup.select('div div div[style*="height:80px;"][style*="width:700px"]')
但这也行不通。
我不被允许这样做:
soup.select('div div div[style=" height:80px; width:700px "]')
因为它引发了一个错误,说这是一个无效的css选择器(在双引号开头之后或在不允许结束双引号之前的空格)。
有人可以建议我为这个标签使用正确的css选择器吗?
答案 0 :(得分:1)
您可以使用find
:
.find("div", style=" height:80px; width:700px; "))
在选择中使用多个属性不适用于bs4,您也仅限于按属性搜索时可以传递的内容,您可以做的最好的选择是.select_one("div[style*=height:80px;]"
或[style*=width:700px;]"
。