须知:一个网页右键检查(F12)所看到的代码是浏览器最终渲染完成的代码,它和网站服务器给你相应的源代码不一定相同,抓取数据的时候一定要以源代码为主,检查可以帮助你快速查找数据!!!

    目标:
    1:掌握抓取网站图片、视频的一些注意事项
    2:掌握怎么利用 os 标准库判断一个路径是否存在以及怎么创建文件夹!
    2:掌握利用 requests 模块抓取网站图片的步骤

    一:抓取网站图片、视频的一些注意事项

    图片、视频在计算机内的存储方式:图片、视频、音频均以二进制(bytes)数据的方式进行存储

    图片、视频等的 url 地址:图片、视频等文件的源url地址不是浏览器最上方的地址,而是在图片上右击选择复制图片源地址的地址

    抓取注意事项:
    1:因此在向图片、视频等 url 源地址发送请求获取源代码数据时,应该获取二进制(bytes)网页源代码
    2:获取到二进制网页源代码后,保存文件时,只要是图片、视频等,都要以二进制的方式打开指定文件!!



    二:怎么利用 os 标准库判断一个路径是否存在以及怎么创建文件夹!

    判断路径是否存在功能语法实现:

    1.import os →导入模块
    2.is_no = os.path.exists(指定路径文件夹或文件) →判断指定路径文件夹(文件)是否在计算机存在,是返回True,不在返回False


    创建文件夹语法实现:

    1.import os →导入模块
    2.os.mkdir(文件夹名) →文件夹名可以是指定路径(绝对路径、相对路径)下的文件夹

    代码演示:

    image.png



    三:利用 requests 模块抓取网站图片的步骤

    第一步:找到图片的源地址(不是浏览器最上方的url)

    image.png

    第二步:利用 requests 模块向图片源地址发送请求,获取二进制(bytes)类型的网页源代码

    实现语法:

    res_obj = requests.get(url=图片源地址,headers=包装的请求头) →创建图片源地址响应对象
    html_b_data = res_obj.content →利用对象的content获取网页二进制源代码


    第三步:利用 os 模块判断图片待保存的路径(文件夹)是否存在,不存在创建这个路径文件夹

    实现语法:

    if os.path.exists(图片待保存文件夹路径):
    print(“路径存在”)
    else:
    print(“路径不存在即将创建”)
    os.mkdir(图片待保存的文件夹路径)


    第四步:根据自己的想法创建图片待保存的文件名,并且拼接图片待保存路径以及文件名

    创建图片名实现语法:
    1.根据图片源地址创建图片保存名称(源地址后缀必须是.jpg或者.png等): 图片源地址字符串 [ -10 : ] →获取图片源地址的最后10个字符串作为文件名

    2:根据抓取的图片标题创建图片保存名称

    3:单纯的遍历某个数字区间命名


    拼接图片待保存路径以及文件名语法:带保存路径 + 图片带保存名


    第五步:以二进制读写方法打开已经拼接好的的路径文件(不是路径文件夹)

    实现语法:
    with open (拼装好的路径文件,“wb”)as f :
    f.wither(向图片源地址请求的二进制源代码)

    实现代码截图(部分):

    image.png