find_all用法
来源:互联网 发布:被墙域名查询 编辑:程序博客网 时间:2024/06/04 19:03
find_all用法
假设现在爬取了这样的网页
find_all(name,attrs,recursive,text,**kwargs)可以根据标签名,属性,内容查找文档。
参数详解:
name参数:
取出标签为name的所有标签,存放到列表中,索引取出来都是bs4对象。
soup = BeautifulSoup(html, 'lxml')双流去哪家妇科医院好?
金牛区妇科哪里有做妇科检查好的医院?
成都金牛区男科医院哪家较好
成都红光附近治疗早泄哪儿好?
武侯区治疗早泄可靠的男科医院?
金牛区包茎手术费用是多少?
print(soup.find_all('ul'))#取出所有ul放入一个列表中,每一个ul单独取都是一个bs4对象
'''
[
Foo
Bar
Jay
,
Foo
Bar
]
'''
print(type(soup.find_all('ul')[0]))#
要获得里面的li标签则需要对每个bs4对象再次使用find_all()方法。
for ul in soup.find_all('ul'):成都青羊区哪里有割包皮好的医院
成都九龙医院在线咨询?
成都双流哪里的医院能够治好阳痿
成都成华区附近哪儿的医院治疗早泄好
郫都区人流医院排行榜?
治疗月经不调成都青白江附近哪里的医院好
print(ul.find_all('li'))
'''
[
Foo
,
Bar
,
Jay
]
[
Foo
,
Bar
]
'''
attr参数:
print(soup.find_all(attrs={'id': 'list-1'}))
print(soup.find_all('',{"class":"element"}))#class需要使用这种方式取
attrs可以传入字典的方式来查找标签,但是这里有个特殊的就是class,因为class在python中是特殊的字段,所以如果想要查找class相关的可以更改为soup.find_all('',{"class":"element})。
text参数:五块石金牛区哪家割包皮好
成都中和镇做人流哪家医院好?
成都蛟龙港做人流哪家医院好?
妇科检查去成都哪家医院好
成都市治疗阴道炎妇科医院那里好?
成都郫县治疗月经不调的医院那里好?
print(soup.find_all(text='Foo'))#['Foo', 'Foo']
print(soup.find_all(text='Fo'))#[]
结果返回的是查到的所有的text='Foo'的文本,必须精确匹配。
find的用法:
find(name,attrs,recursive,text,**kwargs),与find_all()的区别就是find返回的匹配结果的第一个元素。
find的用法成都金牛区哪家男科医院治疗尿道炎好?
治疗前列腺炎成都金牛区男科医院那里好?
双流区蛟龙港江治疗阳痿哪家医院好
成都市治疗勃起障碍那里的医院好?
css选择器
bs4提供select()直接传入CSS选择器就可以完成选择,与前端匹配css的方式基本一致。
print(soup.select('.panel .panel-heading'))#[
Hello
]
print(soup.select('ul li'))
print(soup.select('#list-2 .element'))#[
Foo
,
Bar
]
print(type(soup.select('ul')[0]))#
get_text()获取内容:
for li in soup.select('li'):
print(li.get_text())成都市治疗勃起障碍那里的医院好?
药流会不会很痛?
成都安靖无痛人流那家医院好?
武侯区治疗阳痿医院哪家比较好
五块石金牛区哪家割包皮好
通过[属性名]或者attrs[属性名]获得属性:
for ul in soup.select('ul'):
print(ul['id'])#两种方法的效果一致
print(ul.attrs['id'])
- find_all用法
- soup.find_all()用法
- Enumerable#find_all
- BeautifulSoup find() 和 find_all()
- find_all输出乱码问题
- python之find_all
- BeautifulSoup库中find_all()方法
- BeautifulSoup使用find_all方法乱码问题
- BeautifulSoup中find(),find_all(),select()函数
- Python的BeautifulSoup之find和find_all
- python爬虫(1)——BeautifulSoup库函数find_all()
- 基于Beautiful Soup 4.2.0文档的学习记录(1)——find()、find_all()、findAll()
- python之BeautifulSoup之二 带属性值的抓取(find_all('tag', attrs={'class':'value'})
- python网络爬虫与信息采取之解析网页(二)---BeautifulSoup库的find()和find_all()
- 用法
- ,, 用法
- 用法
- 用法
- ELK6.1搭建--安装和配置
- Mysql系列课程--第六章 索引和视图
- java8 stream for循环 强for 效率
- PyQt5笔记(01) -- 创建空白窗体
- 使用npm react-tools编译jsx
- find_all用法
- js实现继承的5种方式
- OPENDJ的安装图文说明
- Python Scikit-learn ---- 决策树算法
- String是否为空的注意点
- Winform登陆+验证码+链接数据库+窗口切换
- C++学习之Pair
- 局域网技术
- 在C++中调用Jieba进行中文分词