目录
第1章:Scrapy是个啥?为什么它是你爬虫路上的最佳拍档?
1.1 Scrapy的核心亮点
1.2 啥时候用Scrapy?
1.3 安装Scrapy
第2章:动手写你的第一个Scrapy爬虫
2.1 创建Scrapy项目
2.2 定义数据结构(Items)
2.3 编写爬虫逻辑
2.4 运行爬虫
2.5 小技巧:调试爬虫
第3章:Scrapy的核心组件与工作流程
3.1 Scrapy的五大核心组件
3.2 数据流转过程
3.3 为什么这对反爬重要?
3.4 配置优化
第4章:初探反爬虫技术:从User-Agent到请求频率
4.1 常见的反爬机制
4.2 应对User-Agent检测
4.3 控制请求频率
4.4 实战:爬取一个带简单反爬的网站
第5章:代理池:突破IP封禁的利器
5.1 为什么需要代理?
5.2 代理的种类
5.3 在Scrapy中配置代理
5.3.1 手动设置单一代理
5.3.2 动态代理池
5.3.3 实战:抓取需要代理的网站
5.4 小心踩坑
第6章:搞定动态加载:用Scrapy-Splash对抗JavaScript渲染
6.1 什么是Scrapy-Splash?
6.2 安装与配置Splash
6.3 编写动态爬虫
6.4 高级玩法:模拟用户操作
6.5 性能优化
第7章:实战案例:爬取一个动态加载的电商网站
7.1 项目准备
7.2 配置settings.py
7.3 编写爬虫
7.4 运行与调试
7.5 保存到数据库
7.6 成果展示
第8章:破解验证码:从简单到复杂的应对策略
8.1 验证码的类型
8.2 应对图片验证码
8.2.1 人工打码
8.2.2 OCR识别
8.2.3 实战:爬取带验证码的网站
8.3 滑块验证码与行为验证码
8.4 验证码应对的注意事项
第9章:用Selenium/Playwright硬刚复杂反爬
9.1 Selenium vs Playwright
9.2 集成Playwright到Scrapy
9.3 应对行为分析
9.4 性能优化
第10章:分布式爬虫:让Scrapy飞起来
10.1 Scrapy-Redis:分布式爬虫神器
10.2 部署分布式爬虫
10.3 Scrapyd:管理你的爬虫集群
10.4 分布式爬虫的注意事项
第11章:对抗AI行为分析:让爬虫更像“人”
11.1 AI行为分析的套路
11.2 用Playwright模拟人类行为
11.3 伪装设备指纹
11.4 小心踩坑
第12章:破解加密参数:逆向JS的硬核玩法
12.1 常见的加密参数
12.2 逆向JS的步骤
12.3 实战:破解Token加密
12.4 高级玩法:用PyExecJS执行JS
12.5 破解加密的注意事项
第13章:综合实战:打造一个无敌的Scrapy爬虫
13.1 项目规划
13.2 项目搭建
13.3 爬虫代码
13.4 数据存储
13.5 运行与部署
13.6 成果与优化
第1章:Scrapy是个啥?为什么它是你爬虫路上的最佳拍档?
Scrapy,简单来说,就是Python生态里一个超级强大的爬虫框架。它不是那种“拿来即用”的小工具,而是像一个装备精良的战舰,适合从简单抓取到复杂分布式爬虫的各种场景。相比用r