首页 > 解决方案 > Beautifulsoup - 如何在不选择的情况下获取 li 文本?

问题描述

我如何在没有 find.select 的情况下使用 beautifulsoup 在 python 中的这个 HTML 代码中 gtab 的“get this li”文本,因为这一行会在其他页面上发生变化。

<ul id="product-attribute-table">
<li>
Brand:N/A </li>
<li>
Pack Available:N/A </li>
<li>
Get this li </li>
<li>
Colour:N/A </li>
<li>
Display Type:N/A </li>
<li>
Retail Price:N/A </li>
</ul>

我的尝试:

ul = soup.find('ul', {'id': 'product-attribute-table'} #this grab the ul with this id

如何搜索包含“获取此 li”文本的此 li?

标签: pythonbeautifulsoup

解决方案


你可以试试

li = [i for i in soup.find_all('li') if i.text.strip() == 'Get this li']

或者

li = [i for i in soup.find_all('li') if 'Get this li' in i.text]

li将是一个包含 li 项目的列表,其中包含 text 'Get this li'


推荐阅读