当前位置: 首页 > 知识库问答 >
问题:

如何从刮擦的URL列表中下载图像?[重复]

周辉
2023-03-14

可能重复:
如何使用请求下载图像

我有这个Python脚本用于抓取tumblr博客的图像URL,并希望将它们下载到我桌面上的本地文件夹中。我将如何着手实施这一点

import requests 
from bs4 import BeautifulSoup 

def make_soup(url):
#downloads a page with requests and creates a beautifulsoup object

    raw_page = requests.get(url).text
    soup = BeautifulSoup(raw_page)

    return soup


def get_images(soup):
#pulls images from the current page

    images = []

    foundimages = soup.find_all('img')

    for image in foundimages:
        url = img['src']

        if 'media.tumblr.com' in url:
            images.append(url)


    return images


def scrape_blog(url):
# scrapes the entire blog

    soup = make_soup(url)

    next_page = soup.find('a' id = 'nextpage')

    while next_page is not none:

        soup = make_soup(url + next_page['href'])
        next_page = soup.find('a' id = 'nextpage')

        more_images = get_images(soup)
        images.extend(more_images)

    return images


url = 'http://x.tumblr.com'
images = scrape_blog(url)

共有1个答案

汪翰墨
2023-03-14

Python的“urllib2”可能就是您想要的。如果您需要做任何复杂的事情(比如cookie或身份验证),那么可能值得研究一个包装器库,比如请求,它为标准库中许多更麻烦的特性提供了一个很好的包装器。

 类似资料:
  • 问题内容: 我可以通过scrapy将图像下载到“ Full”文件夹中,但是每次scrapy运行时,我都需要使目标文件夹的名称动态化,例如。 有什么办法吗? 问题答案: 我还没有使用过,但是按照文档操作,我会重写。 原始定义是: 这应该为您提供下载图像的结果集,包括路径(似乎一个项目上可能有很多图像)。 如果现在在子类中更改此方法以在设置路径之前移动所有文件,则它应该可以根据需要工作。您可以将目标文

  • 我想从我的应用程序中的URL加载一个图像,所以我首先尝试使用Objective-C,它成功了,但是,使用Swift,我有一个编译错误: “imageWithData”不可用:使用对象构造“UIImage(数据:)” 我的职能: 在目标C中: 有人能给我解释一下为什么不能与Swift一起工作,以及我如何解决这个问题。

  • 问题内容: 我想从我的应用程序中的URL加载图像,因此我首先尝试使用Objective-C,但是它可以正常工作,但是对于Swift,我遇到了编译错误: ‘imageWithData’不可用:使用对象构造’UIImage(data :)’ 我的功能: 在Objective-C中: 有人可以解释一下为什么Swift无法使用它,以及如何解决该问题。 问题答案: Xcode 8或更高版本•Swift 3或

  • 这是我为从url下载图像而编写的代码,但使用java.io.FileNotFoundException重新引用响应代码400

  • 问题内容: 我正在尝试使用我的应用程序中的URL和按钮下载图像。当我在手机上运行它时,我无法下载该图像。任何人都可以指出这个问题。我在这里先向您的帮助表示感谢 :) 这是我的代码。 问题答案: 您可以通过两种方式从url下载图像 1。您 可以使用Glide库从url加载图像,看下面的代码,它可以轻松地为您提供帮助 编译这个库 而不是像这样加载图像 2。如果您不想使用第三方库,请尝试此 创建一个异步

  • 问题内容: 您好,我正在尝试从网页下载图像。我正在尝试从“ http://www.yahoo”主页下载该图像。请告诉我如何传递“ http://www.yahoo”作为输入。以及在打开此网页时如何从该页面获取图像。请给我Java代码以从网页获取图像。 问题答案: (throws IOException) 请参阅包装以获取更多信息。那是使用AWT图片。否则,您可以执行以下操作: 然后您可能想要保存图