如果 class 名称出现在另一个 class 名称中,我该怎么办?
What should I do if a class name is present in another class name?
我试图从一个电子商务网站上抓取一些数据,我需要 div 标签内 span 标签中产品的折扣百分比,标签名称为 class “VGWI6T”但它也给了我名称为“VGWI6T _2YXy_Y”的 class 产品折扣百分比。
<div>
.......
.......
......
<div class= "VGWI6T">
<span>25% off</span>
</div>
.....
.....
.....
</div>
.........
...........
......
<div>
....
....
....
<div class= "VGWI6T _2YXy_Y">
<span>25% off</span>
</div>
....
.....
</div>
我怎样才能只抓取以前 class 名称 (VGWI6T) 的那些产品?
当我在做的时候:
Discount = bs.find_all('div',class_='VGWI6T', attars= 'span')
即使属于VGWI6T的产品也给我所有的折扣_2YXy_Yclass.
使用 css 选择器并且 class 不包含 _2YXy_Y
from bs4 import BeautifulSoup
html='''<div>
.......
.......
......
<div class= "VGWI6T">
<span>25% off</span>
</div>
.....
.....
.....
</div>
.........
...........
......
<div>
....
....
....
<div class= "VGWI6T _2YXy_Y">
<span>25% off</span>
</div>
....
.....
</div>'''
soup=BeautifulSoup(html,"html.parser")
for item in soup.select(".VGWI6T:not(._2YXy_Y) span "):
print(item.text)
我试图从一个电子商务网站上抓取一些数据,我需要 div 标签内 span 标签中产品的折扣百分比,标签名称为 class “VGWI6T”但它也给了我名称为“VGWI6T _2YXy_Y”的 class 产品折扣百分比。
<div>
.......
.......
......
<div class= "VGWI6T">
<span>25% off</span>
</div>
.....
.....
.....
</div>
.........
...........
......
<div>
....
....
....
<div class= "VGWI6T _2YXy_Y">
<span>25% off</span>
</div>
....
.....
</div>
我怎样才能只抓取以前 class 名称 (VGWI6T) 的那些产品? 当我在做的时候:
Discount = bs.find_all('div',class_='VGWI6T', attars= 'span')
即使属于VGWI6T的产品也给我所有的折扣_2YXy_Yclass.
使用 css 选择器并且 class 不包含 _2YXy_Y
from bs4 import BeautifulSoup
html='''<div>
.......
.......
......
<div class= "VGWI6T">
<span>25% off</span>
</div>
.....
.....
.....
</div>
.........
...........
......
<div>
....
....
....
<div class= "VGWI6T _2YXy_Y">
<span>25% off</span>
</div>
....
.....
</div>'''
soup=BeautifulSoup(html,"html.parser")
for item in soup.select(".VGWI6T:not(._2YXy_Y) span "):
print(item.text)