如何在 beautifulsoup 中抓取 image-src

Muh*_*sal 6 python beautifulsoup

我正在尝试在此代码中获取 image-src:

<img alt='Original Xiaomi Redmi Note 5 4GB RAM 64GB ROM Snapdragon S636 Octa Core Mobile Phone MIUI9 5.99" 2160*1080 4000mAh 12.0+5.0MP(China)' class="picCore" id="limage_32856997152" image-src="//ae01.alicdn.com/kf/HTB1WDJZbE_rK1Rjy0Fcq6zEvVXaS/Original-Xiaomi-Redmi-Note-5-4GB-RAM-64GB-ROM-Snapdragon-S636-Octa-Core-Mobile-Phone-MIUI9.jpg_220x220xz.jpg" itemprop="image"/>
Run Code Online (Sandbox Code Playgroud)

我试过这段代码,但它不起作用:

图像 = 汤.find('img').get('image-src')

通常我使用get('src')它并且它有效但问题在这里:我需要使用不起作用的 image-src 。

Mat*_*one 5

查看文档,我找到了find_all适用于这种情况的方法:

这对我有用:

for link in soup.find_all('img'):
    print(link.get('image-src'))
Run Code Online (Sandbox Code Playgroud)

这是我的完整代码:

from bs4 import BeautifulSoup

html_doc = """
<img alt='Original Xiaomi Redmi Note 5 4GB RAM 64GB ROM Snapdragon S636 Octa Core Mobile Phone MIUI9 5.99" 2160*1080 4000mAh 12.0+5.0MP(China)' class="picCore" id="limage_32856997152" image-src="//ae01.alicdn.com/kf/HTB1WDJZbE_rK1Rjy0Fcq6zEvVXaS/Original-Xiaomi-Redmi-Note-5-4GB-RAM-64GB-ROM-Snapdragon-S636-Octa-Core-Mobile-Phone-MIUI9.jpg_220x220xz.jpg" itemprop="image"/>
"""

soup = BeautifulSoup(html_doc, 'html.parser')

for link in soup.find_all('img'):
    print(link.get('image-src'))

Run Code Online (Sandbox Code Playgroud)

结果:

//ae01.alicdn.com/kf/HTB1WDJZbE_rK1Rjy0Fcq6zEvVXaS/Original-Xiaomi-Redmi-Note-5-4GB-RAM-64GB-ROM-Snapdragon-S636-Octa-Core-Mobile-Phone-MIUI9.jpg_220x220xz.jpg  
Run Code Online (Sandbox Code Playgroud)


Bit*_*han 1

您可以通过将标签视为字典来访问标签\xe2\x80\x99s 属性。您可以直接访问该字典.attrs

\n\n
soup.find('img').attrs['image-src']\n
Run Code Online (Sandbox Code Playgroud)\n