Skip to content
静心静心
HOME
DoubtfulCases
github icon
  • uniapp开发

    • uniapp 开发微信小程序
      • uniCloud云函数
        • Python 爬取网站中美女图片

        如何利用Python 爬各个网站美女图片

        author iconYYcategory icon
        • Python
        timer icon大约 2 分钟

        # 如何利用Python 爬各个网站美女图片

        1. # 导入说需要的库

        如果没有请安装pip install requests && pip install lxml

        import requests
        import os
        from lxml import etree
        
        1
        2
        3
        1. # 伪装一个身份发送信息
        headers = {
                'User-Agent' : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.81 Safari/537.36"
            }
            
        
        1
        2
        3
        4
        1. # 设置目标url地址,也就是要爬去的网站地址
        url = "https://pic.netbian.com/shoujibizhi/index_2.html"  // 我爬的这个网站
        
        1
        1. request发送请求利用etree解析当前页面的所有信息
        page_text = requests.get(url = url, headers = headers)
        tree = etree.HTML(page_text)
        
        1
        2
        1. # 通过tree.xpath获取所有暂时图片的列表
        li_list = tree.xpath('//div[@class="alist"]/ul/li') 
        
        // 找到所有类名为alist的div标签下的ui标签下的li标签
        
        1
        2
        3
        1. # 创建文件夹
        os.mkdir('picLibs')
        
        1
        1. 循环列表找到指定图片url写入文件
        for li in li_list :
                    img_name = li.xpath('./a/img/@alt')[0] + '.jpg'  // 具体要看该图片长什么样
                    img_src = "https://pic.netbian.com/" + li.xpath('./a/img/@src')[0]
                    img_data = requests.get(url = img_src, headers = headers).content // 获取看情况获取名称
                    with open('picLibs' + img_name, 'wb') as fp :
                        fp.write(img_data)
        
        1
        2
        3
        4
        5
        6
        # 完整代码

        不可能一页一页的爬去图片,所以再最外面根据实际情况加了一个循环

        #解析下载图片数据
        import requests
        import os
        from lxml import etree
        
        if __name__ == "__main__" :
            parse = etree.HTMLParser(encoding = "utf-8")
            headers = {
                'User-Agent' : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.81 Safari/537.36"
            }
            
            for num in range(3,12): // 这里可以根据网站来调整页数
                url = "https://pic.netbian.com/shoujibizhi/index_" + str(num) + ".html"
                page_text = requests.get(url = url, headers = headers)
                # 通用处理中文乱码的解决方案
                # img_name = img_name.encode('iso-8859-1').decode('gbk')
                page_text.encoding = page_text.apparent_encoding
                page_text = page_text.text
                tree = etree.HTML(page_text, parser = parse)
        
                li_list = tree.xpath('//div[@class="alist"]/ul/li')
                
                print(li_list,'li_list')
                if not os.path.exists('picLibs'+ str(num)) :
                    os.mkdir('picLibs'+ str(num))
        
                for li in li_list :
                    img_name = li.xpath('./a/img/@alt')[0] + '.jpg'
                    img_src = "https://pic.netbian.com/" + li.xpath('./a/img/@src')[0]
                    img_data = requests.get(url = img_src, headers = headers).content
        
                    with open('picLibs'+ str(num) +'/' + img_name, 'wb') as fp :
                        fp.write(img_data)
        
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33

        代码执行 安装python 环境 python xxx.py 即可

        edit icon编辑此页open in new window
        上一页
        uniCloud云函数
        傻瓜都能写出计算机可以理解的代码。唯有能写出人类容易理解的代码的,才是优秀的程序员。
        Copyright © 2022 YY

        该应用可以安装在您的 PC 或移动设备上。这将使该 Web 应用程序外观和行为与其他应用程序相同。它将在出现在应用程序列表中,并可以固定到主屏幕,开始菜单或任务栏。此 Web 应用程序还将能够与其他应用程序和您的操作系统安全地进行交互。

        详情