如何获取与特定id相关的所有HTML标签(美味汤)

时间:2018-03-12 15:17:09

标签: python python-3.x beautifulsoup

我有一个HTML页面,其中包含多个链接,其中包含以下相同的参考:

<a href="1"><img src="myImage.png"></a>
<a href="1"><img src="myImage22.png"></a>
<a href="1"><img src="myImage33.png"></a>

当我请求页面返回具有href 1的所有标记(链接)时,它仅返回第一个标记。如何告诉代码不仅返回第一个链接的所有链接?

这是我的代码:

page = requests.get('http://www.myWebsite.com')
soup = BeautifulSoup(page.content, 'html.parser')
author_name = soup.find('a', href= '1')

1 个答案:

答案 0 :(得分:1)

你可以这样做:

page = requests.get('http://www.myWebsite.com')
soup = BeautifulSoup(page.content, 'html.parser')
for link in soup.find_all('a', {'href':'1'}):
    print(link.getText())

或者如果你想从中列出一个列表,你可以这样做:

author_names = [link.getText() for link in soup.find_all('a', {'href':'1'})]

您的解决方案的问题是find()仅返回第一个结果,而find_all()则返回所有结果。 您可以在Beautiful Soup here

上阅读更多内容