问题描述
HTML:
<Meta name="speaker" content="Peter">
<Meta name="speaker" content="John">
<Meta name="speaker" content="Jim">
from bs4 import BeatifulSoup
name = soup.find('Meta',attrs={'name': 'speaker'})['content']
print(name)
输出为 Peter
但是如果我想得到我不能使用的每个名字
name = soup.find_all('Meta',attrs={'name': 'speaker'})['content']
因为使用 find_all 时方括号只支持整数。
还有别的方法吗?
解决方法
names = soup.find_all('meta',attrs={'name': 'speaker'})
你可以使用 for 循环
name_list = []
for name in names:
name_list.append(name["content"])
或列表理解
name_list = [name["content"] for name in names]
然后你得到
['Peter','John','Jim']