zoukankan      html  css  js  c++  java
  • Requests库入门

    1.Requests库的7个主要方法:

    requests.request() 构造一个请求,支撑一下各种方法的基础
    requests.get() 获取HTML网页的主要方法,对应于HTTP的GET
    requests.head() 获取HTML网页头信息的方法,对应于HTTP的HEAD
    requests.post() 向HTML网页提交POST请求的方法,对应于HTTP的POST
    requests.put() 向HTML网页提交PUT请求的方法,对应于HTTP的PUT(覆盖原URL位置的资源)
    requests.patch() 向HTML网页提交局部修改请求,对应于HTTP的PATCH
    requests.delete() 向HTML页面提交删除请求,对应于HTTP的DELETE

    2.requests.get(url,params=None,**kwargs)

       url:拟获取页面的url链接  params:url中的格外参数,字典或字节流格式,可选  

     **kwargs:12个控制访问参数(params,data,json,headers,cookies,auth,files,timeout,proxies,allow_resirects,stream,verify,cert)

    3.Response对象的属性:

    r.status_code HTTP请求的返回方式,200表示连接成功,404表示失败
    r.text HTTP响应内容的字符串形式,即:url对应的页面内容
    r.encoding 从HTTP header中猜测的响应内容编码方式
    r.apparent_encoding 内容中分析出的响应编码方式(备选编码方式)
    r.content HTTP响应内容的二进制形式

    4.(1)理解Requests库的异常:

    requests.ConnectionError 网络连接错误异常,如DNS查询失败,拒绝连接等
    requests.HTTPError HTTP错误异常
    requests.URLRequired URL缺失异常
    requests.TooManyRedirects 超过最大重定向次数,产生重定向异常
    requests.ConnectTimeout 连接远程服务器超时异常
    requests.Timeout 请求URL超时,产生超时异常

        (2)response的异常:

    r.raise_for_status() 如果不是200,产生异常 requests.HTTPError

                                 r.raise_for_status()不需要if便于利用try-except进行异常处理

    5.HTTP协议:

      http://host[:port][path] 

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

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

    6.网络爬虫的限制:

    来源审查: 判断User-Agent进行限制
    发布公告: Robots协议
  • 相关阅读:
    C# 集合类 :(Array、 Arraylist、List、Hashtable、Dictionary、Stack、Queue)
    "Isa"与"Hasa"
    Access、SQLite、HSQLDB、Sybase、MySQL、DB4O比较
    C#反射(二)
    跳出语句
    C#反射(一)
    返回集合使用IEnumerable<>还是IList<>
    理解C#值类型与引用类型
    WF4 Beta2 工作原理
    Interesting thing with WF4 Activity Scheduling
  • 原文地址:https://www.cnblogs.com/lskai/p/11907603.html
Copyright © 2011-2022 走看看