Skip to main content
 首页 » 编程设计

python之CSS 选择器没有选择

2025年05月04日14emanlee

为什么我的 s.select("li") 语句没有选择代码?我怎样才能让它被选中?

print type(s) 
print s 
if not s.select("li"): print 'lol!' 

输出:

<class 'bs4.element.Tag'> 
<li id="330811110-hlshE">1</li> 
lol! 

请您参考如下方法:

select() 在对象内部搜索(可以是Soup 对象以及Tag ) 你调用它,并且在 s 中没有要查找的 li 元素。另一方面,这有效:

print type(t) 
print t 
print t.select("li") 
if not t.select("li"): print 'lol!' 
 
# outputs: 
<class 'bs4.element.Tag'> 
<ul><li id="330811110-hlshE">1</li></ul> 
[<li id="330811110-hlshE">1</li>] 

如果你想测试一个Tag对象是否是一个特定的元素,而不是它是否包含一个元素,只需测试它的name属性:

if s.name == "li": print "yep" 
 
# outputs: 
yep