- 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自己端口号