原创丨发布一个爬虫案例平台

1128次阅读  |  发布于4年以前

“ 阅读本文大概需要 3 分钟。

”之前也写过不少关于爬虫的博客了,比如我拿一个案例来写了一篇博客,当时写的时候好好的,结果过了一段时间这个页面改版了,甚至直接下线了,那这篇案例就废掉了。

另外如果拿别人的站或者 App 来做案例的话,比较容易触犯到对方的利益,风险比较高,比如把某个站的 JavaScript 逆向方案公布出来,比如把某个 App 的逆向方案公布出来。如果此时此刻没有对方联系你的话,一个很大原因可能是规模太小了别人没注意到,但不代表以后不会。我还是选择爱护自己的羽毛,关于逆向实际网站和 App 的案例我都不会发的。在这种情况下比较理想的方案是自建案例,只用这个案例讲明白对应的知识点就可以了。

所以,为此,这段时间我也在写一些爬虫相关的案例,比如:

•无反爬的服务端渲染网站 •带有参数加密的 SPA 网站 •各类形式验证码网站 •反 WebDriver 网站 •字体反爬等网站 •模拟登录网站 •App 案例,如代理检测,SSL Pining 等

今天发布一下。

案例列表

本案例平台自爬数据、自建页面、自接反爬,案例稳定后永不过期,适合教学与练习。

SSR 网站

•ssr1[1]:猫眼电影数据网站,数据通过服务端渲染,适合基本爬虫练习。 •ssr2[2]:HTTPS 无效证书网站,适合做跳过验证 HTTPS 案例。 •ssr3[3]:HTTP Basic Authentication 网站,适合做 HTTP 认证案例,用户名密码均为 admin。•ssr4[4]:每个响应增加了 5 秒延迟,适合测试慢速网站爬取或做爬取速度测试,减少本身网速干扰。

SPA 网站

•spa1[5]:猫眼电影数据网站,数据通过 Ajax 加载,页面动态渲染,适合 Ajax 分析和动态页面渲染爬取。 •spa2[6]:猫眼电影数据网站,数据通过 Ajax 加载,数据接口参数加密且有时间限制,适合动态页面渲染爬取或 JavaScript 逆向分析。 •spa3[7]:猫眼电影数据网站,数据通过 Ajax 加载,无页码翻页,适合 Ajax 分析和动态页面渲染抓取。 •spa4[8]:新闻网站索引,数据通过 Ajax 加载,无页码翻页,适合 Ajax 分析和动态页面渲染抓取以及智能页面提取分析。 •spa5[9]:豆瓣图书网站,数据通过 Ajax 加载,有翻页,无反爬,适合大批量动态页面渲染抓取。 •spa6[10]:电影数据网站,数据通过 Ajax 加载,数据接口参数加密且有时间限制,源码经过混淆,适合 JavaScript 逆向分析。

验证码网站

•captcha1[11]:对接滑动拼图验证码,适合滑动拼图验证码分析处理。 •captcha2[12]:对接图标点选验证码,适合图标点选验证码分析处理。 •captcha3[13]:对接图文点选验证码,适合图文点选验证码分析处理。 •captcha4[14]:对接语序分析验证码,适合语序分析验证码分析处理。 •captcha5[15]:对接空间推理验证码,适合空间推理验证码分析处理。 •captcha6[16]:对接九宫格识图验证码,适合九宫格识图验证码分析处理。

模拟登录网站

•login1[17]:登录时用户名和密码经过加密处理,适合 JavaScript 逆向分析。 •login2[18]:对接 Session + Cookies 模拟登录,适合用作 Session + Cookies 模拟登录练习。•login3[19]:对接 JWT 模拟登录方式,适合用作 JWT 模拟登录练习。

反爬型网站

•antispider1[20]:WebDriver 反爬网站,检测到 WebDriver 就不显示页面。 •antispider2[21]:对接 User-Agent 反爬,检测到常见爬虫 User-Agent 就会拒绝响应,适合用作 User-Agent 反爬练习。 •antispider3[22]:对接文字偏移反爬,所见顺序并不一定和源码顺序一致,适合用作文字偏移反爬练习。 •antispider4[23]:对接字体文件反爬,显示的内容并不在 HTML 内,而是隐藏在字体文件,设置了文字映射表,适合用作字体反爬练习。 •antispider5[24]:限制 IP 访问频率为最多 1 秒一个,如果过多则会封禁 IP。

App

•app1[25]:最基本的 App 案例,数据通过接口加载,无反爬,无任何加密参数,适合做抓包分析和请求模拟。 •app2[26]:设置了接口请求不走系统代理,因此无法直接抓包,适合做抓包特殊处理。 •app3[27]:对系统代理进行了检测,如果设置了代理则无法正常请求数据,适合做抓包特殊处理。 •app4[28]:设置了 SSL Pining,如果设置了非法证书则无法正常请求数据,适合做反 SSL Pining 处理。 •app5[29]:接口增加了加密参数,适合做抓包实时处理或可视化爬取或逆向分析。 •app6[30]:接口增加了加密参数,同时对源码进行了混淆,适合做抓包实时处理或可视化爬取或逆向分析。 •app7[31]:接口增加了加密参数,同时对安装包进行了加固处理,适合做抓包实时处理或可视化爬取或逆向分析。

暂且是这么多,后续还会继续增加,大家可以试着爬爬看。

汇总链接

为了方便,我专门申请了一个域名,scrape.center,意思名为「爬取中心」,似乎听起来意义上还说的过去?

案例平台首页 URL:https://scrape.center,截图如下:

案例首页

大家可以点击任意一个网站来爬取练习。

案例预览

下面是一些部分案例的截图:

SSR1案例截图

SPA4案例截图

SPA5案例截图

SPA6案例截图

上面是一些案例的效果,基本上是使用 Django + Vue.js 开发的,主题使用了红色调,整个案例平台风格比较统一。另外还有一些 App 也是类似的风格,大家可以自行下载体验试试。

当然这里面最主要的还是案例的功能,比如各种加密、反爬、检测等等。

源代码

有朋友可能会问这个案例平台的源代码在哪里。

这里解释一下,由于这个案例平台以后会用于案例的讲解,并且可能会出现在课程、书本中,所以为了避免盗版和抄袭的问题,这里我选择了闭源,也算是对自己的知识成果的另一种保护吧。

不过这并不意味着爬取代码是闭源的,这块还是会开源出来的。

怎么爬

还有朋友会问,这一个个网站这么多类型和反爬,到底怎么爬呢?

谢谢大家。

References

[1] ssr1: https://ssr1.scrape.center/ [2] ssr2: https://ssr2.scrape.center/ [3] ssr3: https://ssr3.scrape.center/ [4] ssr4: https://ssr4.scrape.center/ [5] spa1: https://spa1.scrape.center/ [6] spa2: https://spa2.scrape.center/ [7] spa3: https://spa3.scrape.center/ [8] spa4: https://spa4.scrape.center/ [9] spa5: https://spa5.scrape.center/ [10] spa6: https://spa6.scrape.center/ [11] captcha1: https://captcha1.scrape.center/ [12] captcha2: https://captcha2.scrape.center/ [13] captcha3: https://captcha3.scrape.center/ [14] captcha4: https://captcha4.scrape.center/ [15] captcha5: https://captcha5.scrape.center/ [16] captcha6: https://captcha6.scrape.center/ [17] login1: https://login1.scrape.center/ [18] login2: https://login2.scrape.center/ [19] login3: https://login3.scrape.center/ [20] antispider1: https://antispider1.scrape.center/ [21] antispider2: https://antispider2.scrape.center/ [22] antispider3: https://antispider3.scrape.center/ [23] antispider4: https://antispider4.scrape.center/ [24] antispider5: https://antispider5.scrape.center/ [25] app1: https://app1.scrape.center/ [26] app2: https://app2.scrape.center/ [27] app3: https://app3.scrape.center/ [28] app4: https://app4.scrape.center/ [29] app5: https://app5.scrape.center/ [30] app6: https://app6.scrape.center/ [31] app7: https://app7.scrape.center/

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8