Python爬虫 煎蛋网全站妹子图爬虫

爬取流程

  • 从煎蛋网妹子图第一页开始抓取;
  • 爬取分页标签获得最后一页数字;
  • 根据最后一页页数,获得所有页URL
  • 迭代所有页,对页面所有妹子图片url进行抓取;访问图片URL并且保存图片到文件夹。

开始

通过上一篇文章的爬取过程,我们基本上理解了抓取一个网站的大致流程。因为一个网站虽然有很多页,但是大部分网站每一页的HTML标签内容都是相同的。我们只要获取到一页的内容,就可以获得所有页的内容了。那么开始之前,我们来分析一下煎蛋网妹子图页面的URL

第一页的 url:http://jandan.net/ooxx/page-1

第二页:http://jandan.net/ooxx/page-2

最后一页:http://jandan.net/ooxx/page-49

不难发现,煎蛋网的 url 的规律是比较简单的,每一页后面 page 的数字就是几。那么我们可以通过一个循环就可以获得所有的页面 URL 了。但是大家应该想到,这个网站每天都会更新,

所以我们需要通过页面的标签信息让程序自己获得页数,我们访问http://jandan.net/ooxx/这个页面时,就相当于我们直接访问了最后一页。大家可以自己试试看。

 

爬虫首先第一步就是分析网站 像我现在这种小白 一般就f12还有右键查看源代码就ok了

还有一点 requests返回的是右键源代码那个文件

 

里面很多东西是没有的 所以就需要兄弟你去分析了

这就是我分析出来的我们需要的东西,然后我们就爬取这个

但是上面给我们的地址并不能访问

因为他是通过base64加密了

Base64编码是一种“防君子不防小人”的编码方式。广泛应用于MIME协议,作为电子邮件的传输编码,生成的编码可逆,后一两位可能有“=”,生成的编码都是ascii字符。
优点:速度快,ascii字符,肉眼不可理解 
缺点:编码比较长,非常容易被破解,仅适用于加密非关键信息的场合

在python中调用base64库就可以了

import base64
s="Ly93dzMuc2luYWltZy5jbi9tdzYwMC8wMDZYTkVZN2d5MWZ2a2Z3bnBkNGlqMzE4dTFrd2FvZy5qcGc="

w=base64.b64decode(s)
print(w)

不多说了我直接上代码 读者可以直接使用  就可以爬煎蛋上面的妹子图片了

from bs4 import BeautifulSoup
import requests
import os #文件操作模块
import base64
import  lxml

def makefile(str):
    path1=os.getcwd()#获取当前目录位置
    print("当前目录位置:     "+path1)
    path1=path1+"//"+str
    if  not os.path.isdir(path1):
        print("当前路径不存在文件夹 "+str)
        os.mkdir(str)
        print("创建"+str+"photo文件夹成功")
    else :
        print("前路径存在文件夹 "+str)
        print("前路径存在路径 "+path1)
    return path1
def downphoto(netadress,localadress):
    # print(os.getcwd())
    # z="D:\\Python程序\\煎蛋photo\\"
    z=os.getcwd()+"\\煎蛋photo\\"
    # print(z)
    # print("--------------------\n")
    # print(z1)
    headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"}   
    re=requests.get(netadress,headers=headers)
    lo=z+netadress.split("/")[4]
    f= open(lo,"wb")
    f.write(re.content)
    f.close()
 
def test(NextUrl,localadress):
    headers={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"}  
    url = NextUrl                       #"https://movie.douban.com/top250"
    f = requests.get(url,headers=headers,timeout=5) 
    # print(f.content)
    # print("--------------------------\n")
    soup = BeautifulSoup(f.content, "lxml")
    # print(soup)
    #####获取图片url
    # print("--------------------------\n")
    qq=soup.find_all("span",class_="img-hash")
    # print(soup.title)
    ImgUrl=[]
    for i in qq:
        ImgUrl.append(str(i))
        # print(i)
    del qq
    temp=[]
    for i in ImgUrl:     #   
        uu=base64.b64decode(((i.split(">"))[1]).split("<")[0])#解码base64
        ww=uu.decode("utf-8")
        temp.append("http:"+ww)      
    for i in temp:
        print("iii:  *"+i+"\n")
        downphoto(i,localadress) #调用下载图片函数

path1=makefile("煎蛋photo")+"\\"

for i in range(49):
    try:
        url="http://jandan.net/ooxx/page-"+(str)(i+1)+"#comments"   #http://jandan.net/ooxx   http://jandan.net/ooxx/page-41#comments
        test(url,path1)
        
    except Exception :
        pass

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值