zoukankan      html  css  js  c++  java
  • requests模块


    爬虫究竟是合法的还是违法的?
      1. 在法律中是不被禁止的!
      2. 具有违法风险的!
        1.干扰了被访问网站的正常运营(恶意爬虫)
        2. 抓取了受到法律保护的特定类型的数据或信息
    避免进局子?
      时常的优化自己的程序,避免干扰被访问网站的正常运行
      审查爬取到的内容 若有设计到用户信息(商业机密)停止爬取或传播

    使用场景分类:
      1. 通用爬虫:搜索引擎抓取系统的重要组成部分 抓取的是一整张的页面数据
      2. 聚焦爬虫:是建立在通用爬虫的基础之上!抓取的是页面中特定的局部内容  
      3. 增量式爬虫: 检测网站中更新的情况 只会抓取网站中最新更新出来的数据

    反爬机制:
      相关的门户网站,可以通过制定相应的策略或者技术手段,防止爬虫程序进行网站数据的爬取
    反反爬策略:
      爬虫程序,通过相关的策略或者技术手段,破解门户网站中具备的反爬机制,从而获取相关的数据

    robots.txt 协议:
      君子协议 规定网站中哪些数据可以被爬虫爬取

    http协议:
      服务器和客户端进行数据交互的一种形式

    请求头信息:
      User-Agent : 请求载体的的身份标识
      Connection : 请求完毕后 是否断开连接
        值: close :断开
    响应头信息:
      Content-Type: 服务器响应回客户端的数据类型
    https协议:
      安全的超文本传输协议:

    加密方式:
      1.对称秘钥加密 :客户端自己制定秘钥和密文 发送给客户端 (传输过程中可能会被三方机构拦截)
      2.非对称秘钥加密: 服务器端制定加密方式(公钥)发送给客户端 ——>客户端发送密文(服务端)
        效率低:
        中间机构 拦截 公钥 篡改
      3.证书秘钥加密 客户端 公钥 -》证书认证机构 数字签名 (防伪)
        保证客户端拿到的公钥 一定是 证书认证机构认证的

    ---------------------------------------------------------------------------------
    requests模块:
      作用: 模拟浏览器发请求
    python 中原生的一款基于网络请求的模块 功能非常强大 简单便捷 效率极高
      使用:(requests模块的编码流程)
      1. 指定url
        1.UA伪装
        2.请求参数的处理
      2. 发起请求
      3. 获取响应数据
      4. 持久化存储响应数据
    环境的安装:
      pip install requests

    UA检测:

      门户网站的服务器检测对应请求的载体身份标识,如果是某一浏览器 就是正常的请求
      不是某浏览器就不是正常的请求(载体),就可能拒绝该次请求
    UA伪装:

      将请求载体伪装成某一浏览器

  • 相关阅读:
    深入理解Java内存(图解堆栈)
    Python 通过脚本获取Android的apk的部分属性,再通过加密算法生成秘钥。
    Android开发中碰到的一个ANR问题。
    Android 解决通过自定义设置打开热点后手机搜索不到热点的问题。
    Android 反射获取一个方法(方法的参数不一样)
    Android 通过反射获取DatePicker 中的控件,并改变其颜色
    Android 解析标准的点击第三方文件管理器中的视频的intent
    Fragment已经被added了导致的异常。
    FragmentActivity + Fragment + Fragment使用过程中出现的bug
    Android学习笔记之SoftReference软引用,弱引用WeakReference
  • 原文地址:https://www.cnblogs.com/zhanghongqi/p/11383583.html
Copyright © 2011-2022 走看看