Python-网络爬虫模块-requests模块之请求

Python原生库urllib库不太方便使用,本着"人生苦短, 我用Python"的珍惜生命精神, 基于urllib, 开发了一个对人类来说, 更好使用的一个库——requests

requests模块的使用方法基本上是requests.方法(method,url,**kwargs),括号中传递各种参数的形式来实现不同的应用场景。

各种请求方法:

  • request(method,url,**kwargs)
  • get(url, params=None, **kwargs)
  • post(url, data=None, json=None, **kwargs)
  • head(url, **kwargs)
  • options(url, **kwargs)
  • put(url, data=None, **kwargs)
  • patch(url, data=None, **kwargs)
  • delete(url, **kwargs)

据源代码显示,下面七种也是基于request方法实现的

request方法详细介绍:

requests.request(method,url,**kwargs)

参数详解:

  • method:请求类型
  • url:请求的url

**kwargs:动态参数,都是可选参数

  • params:

  参数类型:字典或bytes

  作用:一般用于get请求时传递数据

  • data:

  参数类型:字典,元祖列表、bytes、类文件对象

  作用:放在请求体中,一般用于post请求传递数据,会自动把数据转换成为&符号连接的形式,如果需要json字符串格式, 需要手动处理用json模块转换, 也可以借助另一个参数json

  • json:

    参数类型:字典

    作用:放在请求体中,一般用于post请求传递数据,会自动把字典转换成json字符串格式

  • headers

    参数类型:字典

    作用:定义HTTP请求头描述

  • cookies:

    参数类型:字典、Cookiejar

    作用:搞定发送给服务器的cookie

  • files

参数类型:字典类型1:

      {"name": file-like-objects}

        字典类型2

  {"name": file-tuple}      name:服务器接收文件信息的字段名字
  file-tuple:('filename', fileobj, 'content_type', custom_headers)

      filename:文件名,不用需索引文件

      fileobj:文件句柄

      content_type:文件类型

      custom_headers:文件头部信息

      

作用:向服务器上传文件

  • auth

    参数类型:元祖

    作用:用于HTTP Basic/Digest/Custom HTTP授权

  • timeout

参数类型:float:超时时长

     tuple(连接超时,读取超时)

作用:控制请求超时时间

  • allow_redirects

参数类型:bool    (默认为True)

作用:控制是否支持重定向

  • proxies

    参数类型:字典  {"协议":URL}

    作用:设置请求代理

  • verify

    参数类型:bool    是否验证SSL ,默认为True

       string    CA证书存放的路径

  作用:验证HTTPS请求

  • cert

    参数类型:string    ssl client cert file(.pem)

         tuple ("cent":"key")  

    作用:客户端验证

  • stream

    参数类型:bool

    作用:相应的内容,是否以分流式分批下载

requests.request()的方法介绍就这么多,具体应用方式,代码操练

其他的方法都是在内部调用了request方法,使用方式不需要加入method参数,其他都一样的

  

    

 

 

posted @ 2019-04-26 18:05  adrrfsfsd  阅读(510)  评论(0编辑  收藏  举报