python爬虫之BeautifulSoup 使用select方法详解
本文介绍了python爬虫之BeautifulSoup使用select方法详解,分享给大家。具体如下:
TheDormouse'sstory TheDormouse'sstory Onceuponatimetherewerethreelittlesisters;andtheirnameswere , Lacieand Tillie; andtheylivedatthebottomofawell. ... """
我们在写CSS时,标签名不加任何修饰,类名前加点,id名前加#,在这里我们也可以利用类似的方法来筛选元素,用到的方法是soup.select(),返回类型是list
(1)通过标签名查找
printsoup.select('title') #[TheDormouse'sstory ] printsoup.select('a') #[, Lacie, Tillie] printsoup.select('b') #[TheDormouse'sstory]
(2)通过类名查找
printsoup.select('.sister') #[, Lacie, Tillie]
(3)通过id名查找
printsoup.select('#link1') #[]
(4)组合查找
组合查找即和写class文件时,标签名与类名、id名进行的组合原理是一样的,例如查找p标签中,id等于link1的内容,二者需要用空格分开
printsoup.select('p#link1') #[]
直接子标签查找
printsoup.select("head>title") #[TheDormouse'sstory ]
(5)属性查找
查找时还可以加入属性元素,属性需要用中括号括起来,注意属性和标签属于同一节点,所以中间不能加空格,否则会无法匹配到。
printsoup.select("head>title") #[TheDormouse'sstory ] printsoup.select('a[href="http://example.com/elsie"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"]') #[]
同样,属性仍然可以与上述查找方式组合,不在同一节点的空格隔开,同一节点的不加空格
printsoup.select('pa[href="http://example.com/elsie"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"rel="externalnofollow"]') #[]
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。