python requests的基本用法

    大家都知道了接口测试,那么都有什么测试方法呢,咱们有常用的工具postman,jmeter等。这些都提供了很强大的功能,但还有基于代码的测试,那就是python requests,如果您有基本的编程能力,您可以考虑一下这个,优点在于可以自动化,维护成本更低。那么本篇也是给大家介绍一下基本的使用方法。

    那么既然是接口测试,那么就需要有接口,这个接口可以是公共的api,比如百度翻译接口,微信公众号接口,微信登录接口,支付宝付款接口等,当然还可以是一个自己搭好的网站,那么本次咱们就以我自己写的一个最简单的作为咱们的测试接口,具体还是讲python requests的用法,怎么怎么写接口呢,咱们就用python中的flask框架写一个很简单的代码,在写之前需要安装一个flask模块,具体直接pip install flask就可以了。那么具体写出来是什么效果呢,咱们来看代码

from flask import Flask,request

app = Flask(__name__)  # ,template_folder=
app.debug = True  # 自动重启
# 路由函数,改变函数执行的函数,理解为输入地址执行对应地址的函数
@app.route("/", methods=['GET', 'POST'])  # method加上其他方法,否则只有get
def go():
    if request.method=="GET":
        return {"code": "success"}

    elif request.method=="POST":
        # 获取post传过来的值,然后作比较
        if request.form.get("user")=="xiaoli" and request.form.get("pwd")=="123456":
            return {"code": "success"}
        else:
            return {"code": "ERROR"}

# 启动服务器
if __name__ == '__main__':
    app.run()

    如果大家不懂,可以看看flask框架的一些知识,这里不再过多讲解,也可以将上面的代码复制,直接运行就可以了,就可以把本机当做一个服务器了,url是http://127.0.0.1:5000/。咱们写完了服务端,咱们开始写python requests的具体代码了,如下​​​​​​​

# 需要导入requests模块
import requests
# 简单的get请求,用get方法
res = requests.get("http://127.0.0.1:5000/")
# print(res.text)
# 获取响应额结果
print(res.content.decode("utf-8"))

运行结果如下图所示

    以上就是运行了简单的get请求,返回的数据说明成功了,接口没有问题,下面执行一下post请求代码如下​​​​​​​

import requests
url = "http://127.0.0.1:5000/"
data = {"user": "xiaoli",
            "pwd":"123456" }

# 简单的get请求
# res = requests.get("http://127.0.0.1:5000/")
# print(res.text)
# 执行post请求,参数是url和body数据,如果有头部参数特殊填写则后面加上headers=“”
res = requests.post(url=url, data=data)
print(res.content.decode("utf-8"))

    下面的结果就是post成功的结果,用户名密码一致。

    上面咱们传的数据是正确的,咱们传一下错误的,看代码如何反应,把数据user改成xiaoli12,看看怎么反应​​​​​​​

import requests
url = "http://127.0.0.1:5000/"
# user改成xiaoli123
data = {"user": "xiaoli123",
            "pwd":"123456" }

# 简单的get请求
# res = requests.get("http://127.0.0.1:5000/")
# print(res.text)
res = requests.post(url=url, data=data)
print(res.content.decode("utf-8"))

结果如下所示

    这个也是与预期结果一样,没有问题,保持用户唯一性,

以上就是咱们requests的基础用法,后续会继续更新高级的用法,比如自动化等,好了文章就到这里啦

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
requestsPython中一个常用的HTTP库,用于向Web服务器发送HTTP/1.1请求。 使用requests模块,可以方便地进行GET、POST等请求,并处理响应结果。 以下是requests模块的基本用法: 1. 安装requests模块:在命令行中输入 pip install requests。 2. 发送GET请求: ```python import requests url = 'http://www.example.com' response = requests.get(url) print(response.text) ``` 3. 发送带参数的GET请求: ```python import requests url = 'http://www.example.com' params = {'key1': 'value1', 'key2': 'value2'} response = requests.get(url, params=params) print(response.text) ``` 4. 发送POST请求: ```python import requests url = 'http://www.example.com' data = {'key1': 'value1', 'key2': 'value2'} response = requests.post(url, data=data) print(response.text) ``` 5. 发送带文件的POST请求: ```python import requests url = 'http://www.example.com' files = {'file': open('example.txt', 'rb')} response = requests.post(url, files=files) print(response.text) ``` 6. 发送带headers的请求: ```python import requests url = 'http://www.example.com' headers = {'User-Agent': 'Mozilla/5.0'} response = requests.get(url, headers=headers) print(response.text) ``` 7. 处理异常: ```python import requests url = 'http://www.example.com' try: response = requests.get(url, timeout=1) response.raise_for_status() except requests.exceptions.RequestException as e: print(e) ``` 以上就是requests模块的基本用法。更多高级用法可以查看官方文档:https://requests.readthedocs.io/en/latest/。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

找BUG的老爷

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值