这是我的第一个问题。我花了几个小时阅读类似的问题,很抱歉我仍然无法弄清楚这里的问题。
我正在尝试解析一个大的 html,相关部分是这样的:
<li class="offer-params__item">
<span class="offer-params__label">Classe der ware</span>
<div class="offer-params__value">
<a class="offer-params__link" href="https://www.bla.com">Classe 1</a>
</div>
</li>
这是我的代码:
soup = BeautifulSoup(data, 'lxml')
parameters = soup.findAll("li", {"class" : "offer-params__item"})
print(len(parameters))
for item in parameters:
for li in item:
code = li.find_next('span').text.split(' ', maxsplit=1)[0]
print(code)
此外,它将len(parameters)
打印为零,它不会捕获它们。我也尝试过使用正则表达式但没有成功。
使用此代码:
from bs4 import BeautifulSoup
data = '''
<li class="offer-params__item">
<span class="offer-params__label">Classe der ware</span>
<div class="offer-params__value">
<a class="offer-params__link" href="https://www.bla.com">Classe 1</a>
</div>
</li>'''
soup = BeautifulSoup(data, 'lxml')
parameters = soup.find_all("li", {"class" : "offer-params__item"})
print(len(parameters))
for li in parameters:
for sp in i.find_all('span'):
print(sp.text.split(' ', maxsplit=1)[0])
你会得到:
1
Classe