使用BeautifulSoup获取没有类名的个人资料照片

2024-04-24 10:17:24 发布

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

当我学习BeautifulSoup library并尝试爬网网页时,我可以通过限制如下属性来限制搜索结果:a,class name=user name,这可以通过检查HTML源代码找到。你知道吗

下面是一个成功的例子:

    <a href="https://thenewboston.com/profile.php?user=2" class="user-name">
                                            Bucky Roberts </a>                                            

我很容易就知道了

    soup = BeautifulSoup(plain_text,'html.parser')
    for link in soup.findAll('a', {'class': 'user-name'}):

但是,当我尝试获取个人资料照片的链接时,我通过检查看到以下代码:

    <div class="panel profile-photo">
        <a href="https://thenewboston.com/profile.php?user=2">
            <img src="/photos/users/2/resized/869b40793dc9aa91a438b1eb6ceeaa96.jpg" alt="">
        </a>
    </div>

在本例中.jpg链接没有可引用的内容。现在我该怎么做才能为每个用户获得.jpg链接呢?你知道吗


Tags: namehttpsdivcom链接libraryprofileclass
1条回答
网友
1楼 · 发布于 2024-04-24 10:17:24

您可以使用img元素父元素来创建定位器。我将使用下面的CSS selector来匹配img元素,这些元素直接位于具有profile-photo类的元素下的a元素下:

soup.select(".profile-photo > a > img")

要获取src值:

for image in soup.select(".profile-photo > a > img"):
    print(image['src'])

相关问题 更多 >