BeautifulSoupで画像をダウンロードする

requests で画像を取得し、ファイルに保存する

import requests

r = requests.get(url)
with open('./img001.jpg', mode='wb') as fw:
    fw.write(r.content)

画像のリンクを取得する、画像リンクからファイル名に使用するIDを抽出する、ダウンロードする、の処理をそれぞれ別の関数に分けた例。

# 商品の画像をダウンロードする
def downloadProductImg(soup):
    src = getImgLink(soup)
    r = requests.get('https:' + src)
    with open('./files/seven/img/' + getProductImgId(src) + '.jpg', mode='wb') as fw:
        fw.write(r.content)
    return src

# 商品の画像のリンクを取得する
def getImgLink(soup):
    return soup.find(class_='image').find('img')['src']

# 商品の画像リンクから商品IDを取得する
def getProductImgId(img_link):
    return img_link.split('=')[1]