初始爬虫12(反爬与反反爬)

学到这里,已经可以开始实战项目了,多去爬虫,了解熟悉反爬,然后自己总结出一套方法怎么做。

1.服务器反爬的原因

服务器反爬的原因 总结:

1.爬虫占总PV较高,浪费资源

2.资源被批量抓走,丧失竞争力

3.法律的灰色地带

2.服务器常反什么样的爬虫

服务器常反什么样的爬虫 总结:

1.十分低级的应届毕业生

2.十分低级的创业小公司

3.失控小爬虫

4.竞争对手

5.搜索引擎

3.反爬的三个方向

关键在于批量。

3.1基于身份识别的反爬

基于身份识别的反爬 总结:

1.headers

user-agent

referer

cookies

2.请求参数

1.从html文件中提取

2.发送请求获取数据

3.通过js生成

4.通过验证码

3.2基于爬虫行为的反爬

常见基于爬虫行为进行反爬 总结:

1.基于请求频率或总请求数量

通过请求ip/账号单位时间内总请求数量进行反爬

通过同一ip/账号请求之间的间隔进行反爬

通过对请求ip/账号每天请求次数设置阈值进行反爬

2.根据爬取行为进行反爬,通常在爬取步骤上做分析

通过js实现跳转来反爬

通过蜜罐(陷阱)获取爬虫ip(或者代理ip),进行反爬

通过假数据反爬

阻塞任务队列

阻塞网络IO

运维平台审计

3.3基于数据加密的反爬

基于数据加密进行反爬 总结:

1.对响应中含有的数据进行特殊化处理

自定义字体

CSS

js生成

图片

编码格式

4.验证码

4.1验证码的知识

图片验证码 总结:

1.全自动区分计算机和人类的图灵测试

2.防止恶意破解密码、刷票、论坛灌水、刷页。

3.图片验证码在爬虫中的使用场景

注册

登录

频繁发送请求时,服务器弹出验证码进行验证

4.图片验证码的处理方案

手动处理

图像识别引擎解析

打码平台

4.2图像识别引擎

需要引擎安装和python模块安装 。
tesseract下载地址:Index of /tesseract

安装完成之后,简单使用:

python 复制代码
from PIL import Image
import pytesseract

text = pytesseract.image_to_string(Image.open(r'E:\pythonProject\test.png'))
print(text)

tesseract简单使用与训练(非必要操作):

Tesseract-OCR的简单使用与训练 - 小LiAn - 博客园 (cnblogs.com)

4.3打码平台

练习打码平台的使用。

相关推荐
喵手1 小时前
Python爬虫实战:把“菜鸟教程”的知识树连根拔起(递归/遍历实战)(附 CSV 导出)!
爬虫·python·爬虫实战·python爬虫工程化实战·零基础python爬虫教学·菜鸟教程数据采集·采集菜鸟教程于csv
0思必得06 小时前
[Web自动化] 数据抓取、解析与存储
运维·前端·爬虫·selenium·自动化·web自动化
喵手18 小时前
Python爬虫零基础入门【第九章:实战项目教学·第15节】搜索页采集:关键词队列 + 结果去重 + 反爬友好策略!
爬虫·python·爬虫实战·python爬虫工程化实战·零基础python爬虫教学·搜索页采集·关键词队列
喵手19 小时前
Python爬虫零基础入门【第九章:实战项目教学·第14节】表格型页面采集:多列、多行、跨页(通用表格解析)!
爬虫·python·python爬虫实战·python爬虫工程化实战·python爬虫零基础入门·表格型页面采集·通用表格解析
0思必得019 小时前
[Web自动化] 爬虫之API请求
前端·爬虫·python·selenium·自动化
喵手20 小时前
Python爬虫实战:从零构建 Hacker News 数据采集系统:API vs 爬虫的技术抉择!(附CSV导出 + SQLite 存储)!
爬虫·python·爬虫实战·hacker news·python爬虫工程化实战·零基础python爬虫教学·csv导出
0思必得021 小时前
[Web自动化] 爬虫之网络请求
前端·爬虫·python·selenium·自动化·web自动化
喵手1 天前
Python爬虫零基础入门【第九章:实战项目教学·第6节】断点续爬:任务状态表 + 失败队列重放!
爬虫·python·爬虫实战·python爬虫工程化实战·零基础python爬虫教学·断点续爬·任务状态表
安然无虞1 天前
「深入理解多线程编程」再谈线程
爬虫·python·测试工具
小尘要自信1 天前
高级网络爬虫实战:动态渲染、反爬对抗与分布式架构
分布式·爬虫·架构