1. 防盗链(Hotlink Protection)
1.1 定义
防盗链是一种防止其他网站直接链接到你的网站资源(如图片、视频、文件等)的技术。当其他网站直接链接到你的资源时,会增加你的服务器带宽消耗,可能导致额外的费用,甚至影响用户体验。防盗链通过限制资源的访问,确保只有经过授权的用户或页面可以访问这些资源。
1.2 实现方式
-
HTTP Referer:通过检查 HTTP 请求头中的
Referer
字段来判断请求来源。如果Referer
不在允许的列表中,则拒绝访问。 -
Token 或签名:在请求 URL 中添加一个动态生成的签名或 Token,只有包含有效签名的请求才能访问资源。
-
Cookie:要求用户必须通过特定页面访问资源,通过设置和验证 Cookie 来控制访问权限。
-
IP 地址限制:限制只有特定 IP 地址或 IP 范围的用户可以访问资源。
1.3 应对方法(在爬虫中的应用)
-
伪造 Referer:在发送请求时,设置
Referer
请求头为合法的值。headers = { 'Referer': 'https://www.example.com' } response = requests.get(url, headers=headers)