如果今天不努力,明天也不努力,那么人生只是在重复而已。(心不定,难成事)

python3使用requests模块get/post/代理/自定义header/自定义Cookie

Python基础 Sam 28℃ 0评论

 一、安装requests模块

1.1 适用版本

适用于python2.6、python2.7、python3.4及以上版本,参见官方说明。我这里使用的是当前最新的python3.7。

1.2 安装requests模块

二、使用requests模块完成各种操作

下边对于https的链接请求时会带上”verify=False“参数,因为默认Python会进行证书校验如果不是信任的证书会报错,带上”verify=False“指示不进行证书校验。

2.1 引用requests模块

2.2 get请求

2.3 post请求

当前很多api是以json形式提交的,所以在使用post的时候我们可能想提交json数据。

提交json有两步:一是data要编码成json形式(python中的字典形式上和json一样但本质上不一样所以要编码),二是设置“Content-type”头的值为application/json(设置头部参见下面2.5,这里先用)

为了方便对比验证,另外再附curl post提交的方法:

2.4 使用代理

2.5 自定义header

2.6 自定义Cookie

实验发现如果自定义header中定义了cookies那么此处设置的cookies不生效

2.7 会话保执

经常很多请求只有在登录后才能进行,实现登录效果一般的做法是执行登录请求,然后从返回结果中提取sessionid放入自定义cookie中。

这种方法在requests中也行得通,但requests提供了更为简单的方法,直接使用request.Session类来请求即可,其保持登录的原理是保留之前请求中服务端通过set-cookie等设置的参数。

转载请注明:人工智能笔记 » python3使用requests模块get/post/代理/自定义header/自定义Cookie

喜欢 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)