我有下面的HTML
<li class="product-size__option-wrapper">
<a onclick="ACC.productDetail.getNewProductSize(this)" data-option-code="000000000196428006" class="product-size__option">
I WANT THIS</a>
</li>
<li class="product-size__option-wrapper">
<a onclick="ACC.productDetail.getNewProductSize(this)" data-option-code="000000000196428007" class="product-size__option product-size__option--no-stock">
I DONT WANT THIS</a>
</li>
<li class="product-size__option-wrapper">
<a onclick="ACC.productDetail.getNewProductSize(this)" data-option-code="000000000196428006" class="product-size__option">
I WANT THIS</a>
</li>
我使用这个代码来获取数据
linksize =soup.find_all('li', class_='product-size__option-wrapper')
productsize = []
for size in linksize:
for size_available in size.find_all('a', {'class':['product-size__option']}):
productsize.append(size_available.text.strip())
但它同时获得两个标签,因为它共享同一个类(product-size\u选项),我如何才能只获得我需要的信息
谢谢
您不想要的数据有一个CSS类
product-size__option no-stock
。您可以通过执行以下检查来检查元素是否不包含此类:if 'product-size__option no-stock' not in size_available.attrs['class']
例如:
相关问题 更多 >
编程相关推荐