无法从纽约时报网站获取特定图像

2024-09-29 23:20:19 发布

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

我正在从《纽约时报》的网站上抓取元数据。我希望收集三条信息:

  • 标题
  • 文章URL
  • 缩略图像

我已经成功地收集了所有三个,除了《纽约时报》主页在主页上显示文章图像的情况。在这种情况下,我尝试捕捉主页缩略图,但没有成功。以下是我目前的代码:

    for item in soup.select('.story-wrapper'):
        try:
            headline = item.find('h3').get_text()
            link = item.find('a')['href']
            image = item.select('.css-hdqqnp')

css选择器.css-hdqqnp引用纽约时报主页上显示的文章图像的缩略图类(而不仅仅是文本)

如果一篇文章的缩略图已经显示在主页上,而不是只显示在文章页面上(我已经成功地收集到了),我如何才能获得该文章的缩略图


Tags: 数据图像信息url标题网站文章情况
1条回答
网友
1楼 · 发布于 2024-09-29 23:20:19

问题是HTML结构不正确

<div class="..." span="4">
    <div class="....">
        <section class="story-wrapper"> ... </section>
    </div>
</div>
<div class="..." span="6">
    <div class="....">
         <!  ... your nested img-tag inside a div-tag with css class 'css-hdqqnp'   >
    </div>
</div>

也就是说,图像不在节标记内。相反,它位于节的祖父母标记的下一个兄弟标记内。因此,您可以像这样搜索图像缩略图:

for item in soup.select('.story-wrapper'):
    headline = item.find('h3').get_text()
    link = item.find('a')['href']
    if (sibling := item.parent.parent.next_sibling) is not None:
        if (image := sibling.find("img")) is not None:
            image_url = image["src"]

相关问题 更多 >

    热门问题