前面已经跟大家讲了requests模块的get方法,这一篇文章我们要介绍的是requests模块中的另一个比较常用的方法,post方法
post方法的形式相比于get要复杂一些,这时因为post在提交时需要提供一些数据信息,对于使用来说,两种方法基本差不多
请注意,查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的:
下面我们通过一个例子简单了解一下post方法的使用
首先我们要了解一下,下面这个网站
www.httpbin.org
httpbin这个网站能测试 HTTP 请求和响应的各种信息,比如 cookie、ip、headers 和登录验证等,且支持 GET、POST 等多种方法,对 web 开发和测试很有帮助。它用 Python + Flask 编写,是一个开源项目,你可以直接用在线网站,也可以自己在本地搭建一个测试环境
下面是开源地址
熟悉这个之后,我们开始正式写代码
# coding=utf-8 __Author__ = "susmote" import requests post_data = {'user': 'susmote', 'passwd': '123456'} resp_post = requests.post('http://httpbin.org/post', data=post_data) print(resp_post.json())
非常简单的一段代码,首先定义了一个字典,用于传入数据,然后调用requests中的post方法,把数据传到httpbin做响应测试,然后把返回的结果保存为resp_post
最后通过json方法,转换成一个字典以便观察
下面我们在命令行运行这段代码
可以看到,httpbin网站服务器正确的解析了提交的post请求,同时返回了一些数据
关于requests模块中的post方法大概就是这些