如何使用 BeautifulSoup4 获取父项?
How to get parent items with BeautifulSoup4?
我正在用这个喝汤:
soup = BeautifulSoup(html, 'lxml').find("tbody").find_all("tr")
然后 soup 对象包含多个类似的 tr> 对象,就像这样:
<tr>
<td class="table">115</td>
<td>204</td>
<td><div><span class="flag-icon"></span> United States <span> NY </span></div></td>
<td>brown</td>
<td>up</td>
<td class="table">groove</td>
</tr>
所以,我的目标是 - 从 1、2、4 中获取剥离的文本数据并将它们放在一起到小列表中。像这样:
[115, 204, 'brown']
在我从 all 获得所有小列表后,我必须将它们全部添加到大列表中。像这样:
[[115, 204, 'brown'], [32, 12, 'red'] ... [42, 87, 'yellow']]
老实说,我使用了两个 for 循环,并且 sliced 需要小列表项来附加一个大列表。但我认为,有更好更简单的方法来做到这一点。
也许你对如何在我的案例中使用 BeautifulSoup 的强大能力有一些想法?
尝试以下操作:-
rows = BeautifulSoup(html, 'lxml').find("tbody").find_all("tr")
bigList = []
for row in rows:
tds = row.find_all("td")
bigList.append([tds[0].text, tds[1].text, tds[3].text])
我正在用这个喝汤:
soup = BeautifulSoup(html, 'lxml').find("tbody").find_all("tr")
然后 soup 对象包含多个类似的 tr> 对象,就像这样:
<tr>
<td class="table">115</td>
<td>204</td>
<td><div><span class="flag-icon"></span> United States <span> NY </span></div></td>
<td>brown</td>
<td>up</td>
<td class="table">groove</td>
</tr>
所以,我的目标是 - 从 1、2、4 中获取剥离的文本数据并将它们放在一起到小列表中。像这样:
[115, 204, 'brown']
在我从 all 获得所有小列表后,我必须将它们全部添加到大列表中。像这样:
[[115, 204, 'brown'], [32, 12, 'red'] ... [42, 87, 'yellow']]
老实说,我使用了两个 for 循环,并且 sliced 需要小列表项来附加一个大列表。但我认为,有更好更简单的方法来做到这一点。
也许你对如何在我的案例中使用 BeautifulSoup 的强大能力有一些想法?
尝试以下操作:-
rows = BeautifulSoup(html, 'lxml').find("tbody").find_all("tr")
bigList = []
for row in rows:
tds = row.find_all("td")
bigList.append([tds[0].text, tds[1].text, tds[3].text])