zoukankan      html  css  js  c++  java
  • python 之Requests库学习笔记

    1.    Requests库安装

      Windows平台安装说明:

      直接以管理员身份打开cmd运行界面,使用pip管理工具进行requests库的安装。

      具体安装命令如下:

      >pip install pip

     

    2.    Requests库安装验证

    Requests库安装完成后,验证安装是否成功。直接在python IDLE GUI环境下导入requests库,并简单使用requests.get(url)测试。

    测试命令如下:

      >>>import requests
    
      >>>r = requests.get(“http://www.baidu.com”)
    
      >>>r
    
      >>>r.status_code
    
      >>>r.text
    
      >>>r.encode

     3.    HTTP协议

      HTTP是一个机遇“请求”与“响应”模式的、无状态的应用层协议,起采用URL作为定位网络资源的表示,具体的URL格式见以下内容。

    3.1.      URL标准格式

      http://host:[:port][path]
    
      host:合法的Internet主机域名或IP地址
    
      port:端口号,缺省端口为80
    
      path:请求资源的路径

    3.2.      HTTP URL实例

      http://www.baidu.com
    
      http://123.234.123.234/study

    3.3.      HTTP URL的理解

      URL是通过HTTP协议来存取资源的Internet路径,一个URL对应一个数据资源。

    3.4.      HTTP协议资源的操作方法

     

       

    4.    Requests库7中方法

      

    5.    Requests库2个重要对象

      我们首先导入requests库,然后尝试获取http://www.baidu.com网页。

    >>>import requests
    
    >>>r = requests.get(“http://www.baidu.com”)

      上面这个使用requests库get方法抓取网页的过程,就产生了requests库的2个重要对象,具体对象说明如下。

      r就是“Response响应对象”,而requests.get()就是“Request请求对象”。其中Response对象包含服务返回的所有信息,同时也包含request请求信息内容。

       5.1.      Response对象

     

       Response对象包含了服务返回的所有信息内容,我们通多response这个对象可以获取任何我们想要获取的信息。

      同时Response对象也包含 的request信息内容,如下图所示,通过r.request.headers我们就是可以获取request请求头的信息内容。

     

     5.2.      Response对象的属性

      以下列表中,罗列出来了Response对象的几个常用属性。

       

    5.3.      理解Response编码

      

      r.encoding:如果header中不存在charset,则默认编码方式为ISO-8859-1。

      注:r.text默认是根据r.encoding的编码方式来显示网页的内容。

      r.apparent_encoding:根据网页内容分析出编码的方式,可以看作是r.encoding的备选。

    6.    爬取网页通用代码框架

    6.1.      理解requests库异常

      r = requests.get(url) 进行网络资源获取的时候,可能会出现这样或者那样的异常请,我们需要有个稳定的处理框架来处理各种请求异常,以保证代码程序处理的稳定性。

      首先,我们学习和了解以下requests库的异常处理7中方式,具体内容如下。

       

      

    6.2.      通用代码框架

      

  • 相关阅读:
    《x的奇幻之旅》:有趣的数学科普
    转贴健康资讯:毒蘑菇有多毒
    《用地图看懂世界经济》:形势不错,内容偏旧,更适合出彩色电子版。
    《新定位》:过时的经典
    《开膛史》:台湾心外科医生写的医学史散文集 五星推荐
    [Unit Testing] Set the timeout of a Test in Mocha
    [React Native] Reduce Long Import Statements in React Native with Absolute Imports
    [SCSS] Convert SCSS Variable Arguments to JavaScript
    [Angular] Upgrading to RxJS v6
    [Angular] Advanced DI
  • 原文地址:https://www.cnblogs.com/my1e3/p/6642875.html
Copyright © 2011-2022 走看看