Python爬虫,反爬手段之防盗链的处理

防盗链原理

我们日常访问网页,如果从一个网页跳转到另一个网页,http 头字段里面会带个 Referer的参数。那么图片服务器通过检测 Referer 是否来自指定域名,来进行防盗链。当然,不止图片服务器,有的视频服务器也采用了这种方式,比如B站!

简单点说,服务器会判断你是否从规定的域名来访问图片或者视频,如果是那么就正常显示,不是的话,会跳转到别的地方,那么我们用爬虫所采集的图片就会出现问题!我们来通过一个实例看看是怎么回事。

实例说明

上图是某图片网站的header截图,可以看到里面的Referer参数,写个代码看看

这里,取出了该页面的图片,直接用浏览器打开看看(建议换一个浏览器,打开会看到下面的效果)

直接被拒绝访问了!当然也可以试试代码保存,一样是会报错的哦!

解决办法

其实解决办法很简单,加入header,然后把Referer写入即可!

后记

这只是反爬手段中的一种很常见的,还有很多,慢慢分享给大家!

因为只是一个演示用的代码,写的很简单,如果图片不清楚,或者你遇到了其他的反爬手段,也可以私信或者评论里写一下,一起交流才能更快进步!

原文发布于微信公众号 - 云飞学python(P542110741)

原文发表时间:2018-07-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Puppeteer学习

超越Ctrl+S保存页面所有资源

页面所有资源包含本页面所在域资源以及第三方域资源,同主域的资源也认为第三方域资源,这种资源一般是以绝对路径的方式标识,同域下资源主要有三种表现方式 (以ht...

66430
来自专栏深度学习那些事儿

WordPress中wp-admim管理后台(404)无法进入,无限循环跳出解决方法

两天没登博客,今天突然无法进入管理员界面了,通常都是在网站后缀加上/wp-admin进去,今天竟然出现了进不去的情况,错误网址上面显示:

24860
来自专栏macOS 开发学习

Mac开发基础练习:制作一个状态栏(NSStatusBar)上的App(二)

1.1 选中ViewController.m文件,添加鼠标左键点击事件监听,实现代码如下图:

13030
来自专栏运维小白

Git客户端安装及使用

背景 为了我帅气而高大尚的博客一直在研究github,在网上找了一圈,找到了Git的客户端 安装github Git是目前世界上最先进的分布式版本控制系统,gi...

34980
来自专栏大数据挖掘DT机器学习

python模拟新浪微博登陆功能(新浪微博爬虫)

有些网站设置了权限,只有在登录了之后才能爬取网站的内容,如何模拟登录,目前的方法主要是利用浏览器cookie模拟登录。 浏览器访问服务器的过程 在用户访问网页时...

1.1K50
来自专栏开源优测

AutoMagic设计思路简介及新增自定义关键字实例

目录 简介 AutoMagic介绍 SeleniumKey介绍 自定义关键字 简介 AutoMagic 是一个基于WebUI的自...

32470
来自专栏软件开发 -- 分享 互助 成长

source insigt、pc-lint、VS联合使用

前言:     近几天参加公司培训,公司要求,开发的时候使用source insight、PC-lint和VC来编程和调试,这不用不知道,一用吓一跳,这套工具一...

37990
来自专栏Web项目聚集地

PL/SQL Developer连接虚拟机数据库(图文详解)

Web项目聚集地的朋友求助关于PL/SQL Developer连接虚拟机Oracle数据库的教程,他说自己操作过程遇到很多错误,可以说操作中有很多注意的地方...

19320
来自专栏别先生

github协作开发遇到的问题

1、十一来了,帝都不好买票,30号就调休一天回去了,项目还没搞完,紧张的不行,就自己和同事搞了一个github协作开发,由于是功能和公司项目不是很沾边,但是是自...

11840
来自专栏零基础使用Django2.0.1打造在线教育网站

零基础使用Django2.0.1打造在线教育网站(三):Django基础知识回顾

努力与运动兼备~有任何问题可以加我好友或者关注微信公众号,欢迎交流,我们一起进步!

40520

扫码关注云+社区

领取腾讯云代金券