欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

requests下载多张图片

程序员文章站 2022-05-26 23:52:51
...

      前面写了如何下载单张图片,这里就来介绍下如何下载多张图片,区别在于多张图片的命名及放入不同文件夹等问题,我这里直接写如一个文件夹下。

废话不多说,直接上代码,没有定义函数,对新手很友好,步骤很清晰,写博客的主要原因是想让新手少踩一些坑

import requests
from bs4 import BeautifulSoup
import re
url = 'https://www.diediaow.com/'
headers = {
    'User-Agent':'Mozilla/4.0(compatible;MSIE 5.5;Windows NT)',}
html = requests.get(url=url,headers=headers)
# 编码格式设置为utf-8
html.encoding='utf-8'
html = html.text
soup = BeautifulSoup(html,'lxml')
# 循环li
img = soup.select('div.row-l ul.clearfix li')
print(len(img))
a=1
for i in img:
    # 得到img标签,因为得到的是一个列表,所以取第一位
    ig = i.select('a div.img img')[0]
    # 得到img标签的img链接地址,这个标签里面也放了url,当然也可以获取src的url
    img_url = ig.get('data-original')
    # 得到的链接有的格式不正确,所以筛选一下看是否是str类型
    if isinstance(img_url,str):
        print(img_url)
        # 得到图片
        response = requests.get(img_url)
        # 将图片放入G盘的img文件夹下,并给每一张图片命名
        with open('G:/img/'+'a'+str(a)+'.jpg','wb') as fd:
            # 以128字节写入
            for chunk in response.iter_content(128):
                fd.write(chunk)
        a+=1

我爬的是碟调网的图片,这个网站挺不错,可以看免费电影,当然,只有成功将图片爬下来的人才能去看哦

运行代码,然后就会看到我G盘的img文件夹下有这么多图片了,文件名也是自己写的

当然有的图片因为各种原因没有下载下来,还有的因为格式不正确打开不了的就不管了

requests下载多张图片