js逆向学习- 爬虫下载「极简壁纸」图片

本文详细描述了如何通过爬虫技术抓取极简壁纸网站的图片,包括确定抓取思路、追踪请求链路、解密图片地址和处理重定向等步骤,强调了学习和参考价值,但提醒读者不要滥用爬虫。
声明:本文章仅供学习参考,请勿滥用爬虫下载

目录

声明:本文章仅供学习参考,请勿滥用爬虫下载

一、确定抓取思路

二、顺藤摸瓜

总结


前言 

分享下爬取「极简壁纸」网站图片的爬虫流程,主要是分享个人处理的思路。

网站地址(bs64):aHR0cHM6Ly9iei56enptaC5jbi9pbmRleA== 

一、确定抓取思路

  1. 打开网站,先确定下图片下载保存操作的基本逻辑
    1. )可以看到网站首页列表加载了多张图片,点击其中一张,会弹出一个巨大的预览窗口,点击下载按钮后就可以下载原图片。不需要多余的东西,非常友好
    2. )我们可以暂且认为一张图片可能有三种状态,可以称之为列表页的略缩图、点击展开后的预览图、提供下载的原图。我们的目标就是获取原图的下载链接
    3. )那我们就从点击下载这一步开始往前推
  2. 打开控制台-网络面板,清除cookie,刷新页面。然后点击预览一张图片。这时候再清除网络面板的浏览记录,因为接下来我们要点击下载,要看下载请求的内容
  3. 可以看到下面几个请求包
  4. 很显然其中第三个才是下载图片的请求,复制请求链接在新窗口打开,可以看到确实下载了图片。当然这时候我们还不能确定这个链接需不需要我们自己构造,能不能直接拿到。简单看下这个链接的请求参数:/wallpaper/origin/5c23d52f880511ebb6edd017c2d2eca2.jpg?response-content-disposition=attachment&auth_key=1711900800-340294865c06427f78a2d41ce8e2f291dccd045c-0-eb48d71e26b14ebcc2ac2fead8f390d3
    其中显然可以拆成三部分。一部分是文件路径5c23d52f880511ebb6edd017c2d2eca2;一部分是参数response-content-disposition,显然是固定的attachment;还有个长长的auth_key。

       那我们开始找图片链接哪里来的


二、顺藤摸瓜

  1. 全局搜索图片地址 5c23d52f880511ebb6edd017c2d2eca2 ,可以看到源码中没有找到任何内容,只有请求地址中包含。尝试搜索bz/v3/getUrl也一样。说明图片的地址大概率是被加密了
  2. 点击检查页面元素,看下网页加载的图片地址
  3. 可以看到网页上图片的地址也是包含一串特殊字符,对比下就会发现,网页略缩图地址是5c23d52f880511ebb6edd017c2d2eca220, 相比5c23d52f880511ebb6edd017c2d2eca2,结尾多了个20,20是什么还不确定,可以先不管。可以确定的是这串字符就是这张图片的关键,必然在某个请求中返回来加密的。
  4. 重新刷新页面,筛选请求Fetch/XHR, 可以很明显看到/getData,应该就是获取数据的接口。
  5. 返回结果中的result显然是加密内容,应该就是我们想要的包含图片地址的内容
  6. 观察该请求,或者直接复制cURl然后
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值