这个是在使用BeautifulSoup的时候遇到的问题
原因
find()和find_all(),
select()和select_all()获得的数据类型有差异。
当使用
find()
select_one()
获得的数据类型是标签
其类型表现为<class 'bs4.element.Tag'>
因此上述不带all的函数可以通过tag['class']
取值
当使用
find_all()
select()
获得的是组标签(定义为组,和其内容的数量无关)
其类型表现为
#find_all()的返回值类型
<class 'bs4.element.ResultSet'>
#select()的返回值类型
<class 'list'>
由此取值需要标注取值位置后再调用tag[0]['class']
解决方法
先select
再读取元素