解析find的输出

2024-04-19 00:50:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我为你的问题道歉。下面的代码返回

<img alt="Microsoft Xbox One X 1TB Fallout 76 Bundle, Black, CYV-00146" class="hover-zoom-hero-image" src="https://i5.wal.co/asr/9b579e20-a90a-4cac-9f87-7754ec2dbd8d_1.ff268553c4cffc6e64cb684bfbc9bd3e.jpeg-3628c2d42c0afc02fb2a9eae106edfe3eae67c4f-optim-450x450.jpg"/>

如何从输出中获取url

image = soup.find(class_="hover-zoom-hero-image")
print(image)


<img alt="Microsoft Xbox One X 1TB Fallout 76 Bundle, Black, CYV-00146" class="hover-zoom-hero-image" src="https://i5.wal.co/asr/9b579e20-a90a-4cac-9f87-7754ec2dbd8d_1.ff268553c4cffc6e64cb684bfbc9bd3e.jpeg-3628c2d42c0afc02fb2a9eae106edfe3eae67c4f-optim-450x450.jpg"/>

Tags: imagesrcimgaltonemicrosoftclassbundle
2条回答

可以将bs4标记视为attributes和值的键值对的字典image['src']将为您提供url

from bs4 import BeautifulSoup
html="""
<img alt="Microsoft Xbox One X 1TB Fallout 76 Bundle, Black, CYV-00146" class="hover-zoom-hero-image" src="https://i5.wal.co/asr/9b579e20-a90a-4cac-9f87-7754ec2dbd8d_1.ff268553c4cffc6e64cb684bfbc9bd3e.jpeg-3628c2d42c0afc02fb2a9eae106edfe3eae67c4f-optim-450x450.jpg"/>
"""
soup=BeautifulSoup(html,'html.parser')
image = soup.find(class_="hover-zoom-hero-image")
print(image['src'])

输出

https://i5.wal.co/asr/9b579e20-a90a-4cac-9f87-7754ec2dbd8d_1.ff268553c4cffc6e64cb684bfbc9bd3e.jpeg-3628c2d42c0afc02fb2a9eae106edfe3eae67c4f-optim-450x450.jpg

可以使用image.get('src')

用法示例:

from bs4 import BeautifulSoup
soup = BeautifulSoup(html_doc, 'html.parser')

print(soup.prettify())
Here are some simple ways to navigate that data structure:

soup.title

soup.title.name

soup.title.string

soup.title.parent.name

soup.p

soup.p['class']

soup.a

soup.find_all('a')

soup.find(id="link3")

相关问题 更多 >