BeautifulSoup之CSS选择器

选择器

这里我们也通过直接写html 测试
BeautifulSoup之CSS选择器

代码

from bs4 import  BeautifulSoup
htmltext='''<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>选择器</title>
</head>
<body>
<!--测试class-->
<p class="p_class">1</p>
<p class="p_class">1</p>
<p class="p_class">1</p>
<p class="p_class">1</p>
<!--测试href-->
<a href="https://www.baidu.com"></a>
<a href="https://www.baidu.com"></a>
<a href="https://www.taobao.com"></a>
<a href="https://www.taobao.com"></a>
<!--测试id-->
<p id="myp1">1</p>
<p id="myp2">2</p>
<p id="myp3">3</p>
<p id="myp4">4</p>
<p id="myp5">5</p>
</body>
</html>'''
soup=BeautifulSoup(htmltext,'lxml')
#1.通过id选择
print(soup.select("#myp1"))
print(type(soup.select("#myp1"))) #<class 'list'>
#2.通过css 选择
print(soup.select(".p_class"))
print(type(soup.select(".p_class")))#<class 'list'>
#3.交集选择器
print(soup.select("p#myp1"))
#4.后代选择器
print(soup.select("body p"))
###子代选择器
print(soup.select(("body>p")))#直接子标签
#5.并集选择器
print(soup.select("p,a"))
#6.标签内置属性查找
print(soup.select("a[href='https://www.baidu.com']"))
##################查看返回的单值类型##########
print(type(soup.select("a[href='https://www.baidu.com']")[0])) #<class 'bs4.element.Tag'>