Python用beauthoulsoup抓取图像

2024-06-25 05:34:10 发布

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

我正在尝试用BeautifulSoup从一个网站上抓取和下载图片。我已经抓取了一个存储在imgVal中的链接列表,然后代码可以创建一个新的目录来存储图片。我的问题是代码只会从链接列表中下载一个图像。我想全部下载。我怎样才能做到这一点?在

from bs4 import BeautifulSoup
from os.path import basename
import requests
import os

...

def writeImages():
    imgVal = getThumbnailLinks()
    imgBasename = '\n'.join(map(str, imgVal))

    pageNumber = '001'
    filename = pageNumber + '/'
    os.makedirs(os.path.dirname(filename), exist_ok=True)

    with open(filename + basename(imgBasename),"wb") as f:
        f.write(requests.get(imgBasename).content)

writeImages()

Tags: path代码fromimport列表os链接图片
1条回答
网友
1楼 · 发布于 2024-06-25 05:34:10

所以您想下载多行URL作为requests的输入?你不能,你必须用循环一个接一个地做。在

def writeImages():
    pageNumber = '001'
    filename = pageNumber + '/'
    os.makedirs(os.path.dirname(filename), exist_ok=True)

    imgVal = getThumbnailLinks() # ['http://a.jpg', 'http://b.jpg']
    for imgBasename in imgVal:
        with open(filename + basename(imgBasename),"wb") as f:
            f.write(requests.get(imgBasename).content)

writeImages()

相关问题 更多 >