cookie的处理、selenium模块在爬虫中的使用、动作链、移动端数据的爬取

- cookie的处理
- 手动处理
- cookie从抓包工具中捕获封装到headers中
- 自动处理
- session对象。
- 代理
- 代理服务器
- 进行请求转发
- 代理ip:port作用到get、post方法的proxies = {'http':'ip:port'}中
- 代理池(列表)
- 验证码的识别
- 超级鹰
- 模拟登陆
- 验证码的识别
- 动态请求参数
- cookie
- 单线程+多任务异步协程
- 协程
- 如果一个函数的定义被asyic修饰后,则改函数调用后会返回一个协程对象。
- 任务对象:
- 就是对协程对象的进一步封装
- 绑定回调
- task.add_done_callback(func):func(task):task.result()
- 事件循环对象
- 事件循环对象是用来装载任务对象。该对象被启动后,则会异步的处理调用其内部装载的每一个任务对象。(将任务对象手动进行挂起操作)
- aynic,await
- 注意事项:在特殊函数内部不可以出现不支持异步模块的代码,否则会中断整个异步的效果!!!
- aiohttp支持异步请求的模块


- selenium模块在爬虫中的使用
- 概念:是一个基于浏览器自动化的模块。
- 爬虫之间的关联:
- 便捷的捕获到动态加载到的数据。(可见即可得)
- 实现模拟登陆
- 环境安装:pip install selenium
- 基本使用:
- 准备好某一款浏览器的驱动程序:http://chromedriver.storage.googleapis.com/index.html
- 版本的映射关系:https://blog.csdn.net/huilan_same/article/details/51896672
- 实例化某一款浏览器对象
- 动作链:
- 一系列连续的动作
- 在实现标签定位时,如果发现定位的标签是存在于iframe标签之中的,则在定位时必须执行一个
固定的操作:bro.switch_to.frame('id')
- 无头浏览器的操作:无可视化界面的浏览器
- PhantomJs:停止更新
- 谷歌无头浏览器
- 让selenium规避检测


移动端数据的爬取
- fiddler是一款抓包工具:代理服务器
- 青花瓷,miteproxy

- 配置:让其可以抓取https协议的请求
- tools-》options-》https-》安装证书
- http:客户端和服务器端进行数据交互的某种形式
- https:安全的http协议
- https的加密方式采用的是证书密钥加密。

- 1.配置下fiddler的端口
- 2.将手机和fiddler所在的电脑处在同一个网段下(pc开启wifi,手机连接)
- 3.在手机中访问fiddler的ip+port:192.168.14.110:50816,在当前页面中点击对应的连接下载证书
- 4.在手机中安装且信任证书
- 5.设置手机网络的代理:开启代理==》fiddler对应pc端的ip地址和fiddler自己端口号
原文地址:https://www.cnblogs.com/zhang-da/p/12345758.html