我只想显示 soup.select 方法的第一个分数,现在我有以下代码:
score = soup.select('my_name a')
print(score)
urls = [tag['href'] for tag in score if 'href' in tag.attrs and "name" in tag['href']]
print(urls)
当 bs 只找到一个分数时,效果非常好。但是当我得到更多分数时如何只选择第一个分数?
现在输出是:
> [<a href="/name/adrian1021 "> Adrian </a>, <a href="/name/john.james"> John James </a>, <a href="/name/carol22 "> Carol Coat </a>]
>
> ['/name/adrian1021 ', '/name/john.james ', '/name/carol22 ']
我只想提取一个分数,例如输出应该是:
[/name/adrian1021 ']
这可能吗?我尝试像列表中那样处理此问题,但它不起作用。
最佳答案
您正在寻找使用 soup.select_one()
,它仅查找与选择器匹配的第一个元素。
所以你的分数变量应该是:
score = soup.select_one('my_name a')
关于python - python中的Soup.select方法 - 如何只选择一个分数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60252253/