print(soup.ul) #返回ul所有内容 # < ul > # < li > < a # href = "http://www.baidu.com" > 百度 < / a > < / li > # < li > < a # href = "http://www.google.com" > 谷歌 < / a > < / li > # < li > < a # href = "http://www.sogou.com" > 搜狗 < / a > < / li > # < / ul > print(soup.div) #等同于print(soup.find('div')) #具体定位到某一个div,可根据属性定位
print(soup.find('div',class_='common')) #<div class="common">胡辣汤</div>
# 属性定位
soup.findAll('tagName') #返回soup中符合要求的所有标签
a_list = soup.findAll('a') #返回的是一个列表
for a in a_list:
print(a)
print(soup.findAll('a')[1]) #定位第2个a标签的内容
# <a href="http://www.google.com">谷歌</a>
# select选择器:
# -select('某种选择器(id,class ,标签。。。选择器)’)
print(soup.select('.common')) #返回login下的所有标签 :[<div class="common">胡辣汤</div>]
print(soup.select('div')[1]) #返回一个列表 :<div class="job">李嘉诚</div>
# 层级选择器
# soup.select('.tag > ul > li > a')[1]#:表示的一个层级,不能在里写所有,
print(soup.select('.url > ol > li > a '))
# [<a href="https://www.cnblogs.com/zp513/p/feiji">飞机</a>, <a href="https://www.cnblogs.com/zp513/p/dapao">大炮</a>, <a href="https://www.cnblogs.com/zp513/p/huoche">火车</a>
#一个>表示一个层级
print(soup.select('.url > ul > li > a')[0]['href'])
# http://www.baidu.com
print(soup.select('.url ul a')) #[<a href="http://www.baidu.com">百度</a>, <a href="http://www.google.com">谷歌</a>, <a href="http://www.sogou.com">搜狗</a>]
print(soup.select('.url ol li a')) #[<a href="https://www.cnblogs.com/zp513/p/feiji">飞机</a>, <a href="https://www.cnblogs.com/zp513/p/dapao">大炮</a>, <a href="https://www.cnblogs.com/zp513/p/huoche">火车</a>]
获取标签的文本数据
#text/get.text() 可以获取某一个标签中所有内容
#string :获取直系标签的内容
print(soup.find('div',class_= 'url').text) #获取一个url下的所有的值
百度
谷歌
搜狗
飞机
大炮
火车
#获取某一个元素的值
print(soup.find('div',class_= 'job').string) #李嘉诚
获取属性的值比如href
links = soup.findAll('a')
for link in links:
print(link['href'])
到此这篇bs4解析器(bs4数据解析)的文章就介绍到这了,更多相关内容请继续浏览下面的相关
推荐文章,希望大家都能在编程的领域有一番成就!
版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/sjkxydsj/39374.html