求大佬解答疑惑
{:5_104:}是使用bs4库的时候
i ='<div>1<small class="float-right text-muted" data-placement="top" data-toggle="tooltip" ><i class="fa fas fa-comments"></i> 0</small></div>
<div>2<small class="float-right text-muted" data-placement="top" data-toggle="tooltip"><i class="fa fas fa-comments"></i> 0</small></div>'
bs = BeautifulSoup(i,"lxml")
res = bs.find_all('div')
for i in res:
print(i.small)
这个为什么可以用 i 得到small啊???
如果换成 i.div 为什么就是None???
求求大佬解惑 bs = BeautifulSoup(i,"lxml")
print(bs.div) # 打印(筛选第一个div标签的内容),因此这样做只能找到第1个,加了'.'表示bs这个类的属性,筛选的是下一级标签
res = bs.find_all('div') # 查找所有的div标签的内容,保存为列表,赋值给res
print(res) # 打印res列表
for i in res:
print(i.small) # 遍历res列表,筛选res成员中的第一个small标签(同上,也是下一级标签),并打印内容
这么解释你明白么?因此res列表成员(也就是循环中的i变量),是没有div这个下一级标签的
你再试试下面这个代码?
bs = BeautifulSoup(i,"lxml")
res = bs.find_all('small')
for i in res:
print(i) 笨鸟学飞 发表于 2020-12-9 02:06
这么解释你明白么?因此res列表成员(也就是循环中的i变量),是没有div这个下一级标签的
你再试试下面 ...
嗷嗷嗷嗷,谢谢谢谢 孤独的嫖客 发表于 2020-12-9 07:29
谢谢谢,通俗易懂,牛{:5_106:}
页:
[1]