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协议
  • 相关阅读:
    Pagination 分页类
    FckEditorAPI未定义错误分析
    提取DataSet数据集中前N条记录
    JS操作JSON[转]
    JS运行textarea内的HTML代码 [转]
    使用Global.asax文件统计网站总访问量
    文章点击数简单实现周、月、年排行
    asp.net文件下载[转]
    三大策略保证论坛不受垃圾信息影响![转]
    图片以二进制形式写入数据库并显示
  • 原文地址:https://www.cnblogs.com/lskai/p/11907603.html
Copyright © 2011-2022 走看看