接口 使用 Excel
- json格式的字符串,转换成一个字典
import json
# 把json格式的字符串,转换成一个字典
json_data = '{"mobile_phone":true, "pwd":"123456","type":1}'
dict_data = json.loads(json_data)
print(dict_data)# 得到的结果:
{'mobile_phone': True, 'pwd': '123456', 'type': 1}
- 字典转换成 json 字符串
import json
# 把字典转换成 json 字符串
new_dict_data = {"username":"hello","password":None, "female":False}
json_data = json.dumps(new_data_data)
print(json_data)# 得到的结果:
{"username": "hello", "password": null, "female": false}
===============================================================
zip 用法的案例:
a = ["class", "teacher", "student"]
b = ["py37", "xj", "many", "hello"]
c = [1, 2, 3]res = dict(zip(a,b))
print(res)res = list(zip(a,b,c))
print(res)# 得到的结果:
{'class': 'py37', 'teacher': 'xj', 'student': 'many'}
[('class', 'py37', 1), ('teacher', 'xj', 2), ('student', 'many', 3)]
========================================================
1、安装
pip install openpyxl
如何使用 Excel 中的接口用例:
from openpyxl import load_workbookExcel_path = r"C:\PyCharm_test\python_Test\接口自动化\xj\05\testcases\注册接口用例.xlsx"
wb = load_workbook(Excel_path)
""" 加载一个 Excel 得到工作簿 """sh = wb["注册"] # 选择一个表单 - 通过表单名 - 选择的 Sheetcell_value = sh.cell(2,3).value
""" 在选择的表单当中,读取某个单元格的数据、修改/写入数据到某个单元格 Cell读取 选择 第二行 第三列
"""
print(cell_value)# sh.cell(2,3).value = "get" # 修改 第二行 第三列 的数据 修改时记得把 Excel 关掉
# wb.save(Excel_path)
""" 一旦做了修改,就要保存,保存的时候,记得是全面保存。filename如果不是打开的excel文件,那就是另存为如果是打开的excel文件,保存到原文件中保存的时候,要保证没有其它程序在使用当前文件。否则会报错:Permission Error
"""row_nums = sh.max_row # 获取最大总行号 row 代表行
col_nums = sh.max_column # 获取最大总列号 column 代表列keys = [] # 定义一个空列表
for col_index in range(1,sh.max_column+1): # for col_index 里 从(1,最大列+1)keys.append(sh.cell(1,col_index).value) # keys列表.添加(注册表单.中(1,所有的列).值)
print(keys) # 打印 keys 列表 得到列表中的每一个值for row_index in range(2, sh.max_row + 1): # for row_index 里 从(1,行+1)values = [] # 定义 一个空列表for col_index in range(1, sh.max_column + 1): # for col_index 里 从(1,最大列+1)values.append(sh.cell(row_index, col_index).value) # keys列表.添加(注册表单.中(所有的行,所有的列).值)case = dict(zip(keys,values)) # 把 keys列表 跟 values列表 合并,并且转化为字典print(case) # 打印 case 字典
===============================
封装 如何使用 Excel
from openpyxl import load_workbookclass MyExcel:def __init__(self, excel_path, sheet_name): wb = load_workbook(excel_path) # 1、加载一个excel,得到工作薄 Workbookself.sh = wb[sheet_name] # 2、选择一个表单- 通过表单名 Sheetdef read_data(self):# 注意:接口的请求数据,读取出来是字符串。all_data = [] # 存储表单下读取到的所有数据 - 每一个成员都是一个字典; 所以定义一个空列表data = list(self.sh.values) # 获取所有的列名keys = data[0] # 获取 data 的第一个值for row in data[1:]: # for row 在 data里面循环[从 1 开始 :]row_dict = dict(zip(keys, row)) # row_dict = 把 keys 跟 row 合并,并且转化为字典all_data.append(row_dict) # all_data 列表.添加 (row_data)return all_data # 返回 all_data# 调式代码:执行当前的模块。
if __name__ == '__main__':# excel的文件路径excel_path = r"D:\Pychram-Workspace\py37-接口自动化\day5\testdatas\测试用例.xlsx"me = MyExcel(excel_path, "注册接口")cases = me.read_data()for case in cases:print(case)
================================================================
3.pymysql的使用:
安装:
pip install pymysql
Connection 对象
用于建立与数据库的连接
创建对象:调用connect()方法
conn = connect(参数列表)
参数host:连接的MySQL主机,如果本机是“localhost”
参数post:连接的MySQL主机端口,默认是3306
参数database:数据库的名称
参数user:连接的用户名
参数password:连接的密码
参数charset:通信采用的编码方式,推荐使用utf8(注意(不要使用 utf-8 ,否则会报错。)
对象的方法
- close()关闭连接
- commit()提交
- cursor()返回Cursor对象,用于执行sql语句并获得结果
import pymysqlconn = pymysql.connect(host="api.lemonban.com", # 主机名 或 主机地址port=3306, # 端口user="future", # 账号password="123456", # 密码charset="utf8" # 语言 注意(不要使用 utf-8 ,否则会报错。)
)
print(conn)# 初始化游标
cursor = conn.cursor()
print(cursor)# 执行 sql 语句
cursor.execute("SELECT * FROM test_0414.member LIMIT 10;")# 得到查询数据
members = cursor.fetchall()
print(members)# 得到一条记录
cursor_02 = conn.cursor()
cursor_02.execute("SELECT * FROM test_0414.member LIMIT 10;")
members = cursor_02.fetchone()
print(members)# 游标和我们操作文件光标
# TODD: 一个游标对象,最好只获取一次,获取多次很容易出问题。# 游标对象关闭
cursor.close()cursor_02.close() # 有几个游标,就要关闭几次,每个游标都要独自关闭。# 连接对象关闭
conn.close()
接口 使用 Excel相关推荐
- 使用js调用接口导出excel
使用js调用接口导出Excel 以下是使用JavaScript调用接口导出Excel文件的一般流程: 客户端向服务器发送请求,请求后端生成Excel文件: 服务器响应该请求,执行Excel生成操作,并 ...
- swagger接口导出excel文件打不开
swagger接口导出excel文件打不开: 接口添加produces="application/octet-stream" @ApiOperation(value = " ...
- 解决通过调用后台接口实现Excel导出功能,后台返回数据乱码的问题
解决通过调用后台接口实现Excel导出功能,后台返回数据乱码的问题 问题如下: 这导致我虽然成功导出文件,但文件受损打不开 解决方案如下: 在调用接口加入: // 导出 export function ...
- 2. 6 接口自动化 - Excel(Easy POI ) 映射
Excel读写引用库替换为Easy POI 原因: Easy POI更简单(具体可对比下方代码跟2.5中Excel读取代码) 用例Excel分层设计: excel封装成对象1) 导入easypoi的坐 ...
- SpringBoot提供接口实现Excel导入数据并存储到数据库中
SpringBoot提供接口实现Excel导入数据并存储到数据库中 完整项目文件 1 效果展示 1.1 Excel数据 zxy.xlsx 1.2 导入后数据库中数据 CREATE TABLE `use ...
- nodejs调用后端接口返回excel文件流,nodejs再转发前端实现下载excel
今天在项目上遇到了一个问题,就是后端接口返回excel文件流,然后前端实现下载excel,前端下载的excel文件居然无法打开! 在网上搜索了很多对应的资料,也尝试了很多办法,还是没能解决,最后在这篇 ...
- java接口自动化Excel占位符_基于maven+java+TestNG+httpclient+poi+jsonpath+ExtentReport的接口自动化测试框架...
接口自动化框架 项目说明 本框架是一套基于maven+java+TestNG+httpclient+poi+jsonpath+ExtentReport而设计的数据驱动接口自动化测试框架,TestNG ...
- Vue - 调用接口导出 excel 表格至本地
调用后台接口返回的数据: 代码: // 接口地址 axios.post("/project/download",{type: this.params.type,},{respons ...
- python接口自动化-excel参数化二
上一篇我们讲过了表格参数化的具体思路,但是只适用于表格中只有一个功能点的用例,那么表格里边有多个功能点,那要怎么做表格参数化呢,今天我们就来讲一讲. 1.用例 上边这个表格里边有两个功能的用例,分别是 ...
最新文章
- Entity Framework 实体关系总结:one-to-one, one-to-many, many-to-many
- 《剑指offer》-- 和为S的连续整数序列、和为S的两个数字、左旋转字符串、翻转单词顺序列
- prim算法_图的生成树之最小生成树(Prim)
- tfhpple解析html中的图片,图文详解使用TFHpple解析html方法
- 万圣趴的神秘南瓜仙人,送你3本惊喜Python好书
- Lapack求解线性方程组
- Python selenium chrome 环境配置
- pythonsearch方法_python正则表达式(4)--search方法
- AlterID.exe解决teamview商业使用
- 机器学习中数据集的划分
- html文字浮雕效果不起作用,CSS3实现文字浮雕效果,镂刻效果,火焰文字
- OpenCV 之 角点检测
- 关于逻辑关系 “隐含(implies、p-q) 的理解
- 产品|QData Cloud 完美兼容 Oracle 12c 容器数据库
- No valid Maven installation found
- 互联网奥秘_Excel数据表的奥秘
- bzoj1921 [CTSC2010]珠宝商 SAM+后缀树+点分治
- jq 获取input的光标,定位光标的位置
- 家里宽带网络连接第二台路由器实验一
- 芯片的分类以及厂商介绍