【python接口自动化】- 对接各大数据库
相信很多小伙伴在使用python进行自动化测试的时候,都会涉及到数据库数据校验的问题,在前面的随笔中就已经有讲过连接mysql的使用,今天给大家汇总一下python对接几大常用的数据库操作的方法!众所周知,python有着极其丰富的第三方库,所以不管你使用的是关系型数据库(oracle,mysql, sqlserver等),还是非关系型数据库(redis,mongoDB),python都有与之对应的第三方库。下面给大家一一介绍。
Mysql

mysql应该是大家最熟悉的一种数据库了,在python中使用的第三方库为pymysql,这里不多介绍,前面的随笔已单独介绍,请移步传送门。
Oracle

python 对接 Oracle 数据库,使用的第三方库为 cx_Oracle。安装:pip install cx_Oracle。
import cx_Oracle
# 第一步 连接数据库, 参数为'账号/密码/@ip:端口/库名'
con = cx_Oracle.connect('user_name/password@127.0.0.1::8080/databases')
# 第二步 创建游标
cur = con.cursor()
# 第三步 执行sql语句
sql = 'SELECT * FROM user;'
cur.execute(sql)
sql-server

python 对接 sql-server数据库,使用的第三方库为 pymssql。安装:pip install pymssql。
import pymssql
# 第一步 连接到数据库
con = pymssql.connect(host='xxx', # 数据库的地址
user='xxx', # 登录数据库的账号
password='xxxx', # 登录数据库的密码
database='xxx') # 库名
# 第二步 创建游标
cur = con.cursor()
# 第三步 执行sql语句
sql = 'SELECT * FROM user;'
cur.execute(sql)
PostgreSQL

python 对接 PostgreSQL数据库,使用的第三方库为 psycopg2。安装:pip install psycopg2。
import psycopg2
# 第一步 连接到数据库
con = psycopg2.connect(database="xxxxx", # 库名
user="xxxxx", # 数据库账号
password="xxxxxx", # 数据库密码
host="xxxxxx", # 数据库地址
port="5432") # 数据库端口号
# 第二步 创建游标
cur = con.cursor()
# 第三步 执行sql语句
sql = 'SELECT * FROM user;'
cur.execute(sql)
MongoDB

python 对接MongoDB数据库,使用的第三方库为 pymongo。安装:pip install pymongo。
import pymongo
# 第一步:建立连接,数据库地址,端口号
client = pymongo.MongoClient("localhost", 27017)
# 第二步:选取数据库
db = client.test1
# 第三步:选取集合
stu = db.stu
# 第四步:执行相关操作
# 添加一条数据
data1 = {name:'test',age:18}
stu.insert_one(data1)
# 获取一条数据
res = stu.find_one()
Redis

python 对接Redis数据库,使用的第三方库为 redis。安装:pip install redis。
import redis
# 连接数据库
st = redis.StrictRedis(
host='localhost', # 数据库地址
port='6379', # 端口:
db='testdata', # 库名:
)
# redis操作的命令,对应st对象的方法
# 比如在数据库中创建一条键为test的数据,往里面添加3个元素
st.lpush('test',11,22,33)
【python接口自动化】- 对接各大数据库的更多相关文章
- python接口自动化(十)--post请求四种传送正文方式(详解)
简介 post请求我在python接口自动化(八)--发送post请求的接口(详解)已经讲过一部分了,主要是发送一些较长的数据,还有就是数据比较安全等.我们要知道post请求四种传送正文方式首先需要先 ...
- python接口自动化-Cookie_绕过验证码登录
前言 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以通过添加Cookie的方式绕过验证码 前面在“pyt ...
- python接口自动化4-绕过验证码登录(cookie)
前言 有些登录的接口会有验证码:短信验证码,图形验证码等,这种登录的话验证码参数可以从后台获取的(或者查数据库最直接). 获取不到也没关系,可以通过添加cookie的方式绕过验证码. 一.抓登录coo ...
- python接口自动化23-token参数关联登录(登录拉勾网)
前言 登录网站的时候,经常会遇到传token参数,token关联并不难,难的是找出服务器第一次返回token的值所在的位置,取出来后就可以动态关联了 登录拉勾网 1.先找到登录首页https://pa ...
- 2020年第二期《python接口自动化+测试开发》课程,已开学!
2020年第二期<python接口自动化+python测试开发>课程,12月15号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:12月15号-3月29 ...
- python接口自动化13-data和json参数傻傻分不清
前言 在发post请求的时候,有时候body部分要传data参数,有时候body部分又要传json参数,那么问题来了:到底什么时候该传json,什么时候该传data? 一.识别json参数 1.在前面 ...
- python接口自动化(Cookie_绕过验证码登录)
python接口自动化(Cookie_绕过验证码登录) 有些登录的接口会有验证码,例如:短信验证码,图形验证码等,这种登录的验证码参数可以从后台获取(或者最直接的可查数据库) 获取不到也没关系,可以 ...
- Python接口自动化——soap协议传参的类型是ns0类型的要创建工厂方法纪要
1:在Python接口自动化中,对于soap协议的xml的请求我们可以使用Suds Client来实现,其soap协议传参的类型基本上是有2种: 第一种是传参,不需要再创建啥, 第二种就是ns0类型的 ...
- python接口自动化28-requests-html爬虫框架
前言 requests库的好,只有用过的人才知道,最近这个库的作者又出了一个好用的爬虫框架requests-html.之前解析html页面用过了lxml和bs4, requests-html集成了一些 ...
- python接口自动化-参数化
原文地址https://www.cnblogs.com/yoyoketang/p/6891710.html python接口自动化 -参数关联(一)https://www.cnblogs.com/11 ...
随机推荐
- Windows搭建TestLink环境
环境准备: 搭建php5.4.39+apache2.2+mysq5.5.28l环境 (可参考http://www.cnblogs.com/yangxia-test/p/4414161.html) (注 ...
- Win10安装CUDA 10.2
目录 一.安装VS2015 二.安装CUDA 10.2 2.1 安装前工作 2.2 CUDA 10.2下载安装过程 2.2.1 下载CUDA 10.2 2.2.1.1 官网下载地址 2.2.1.2 网 ...
- 数字转金额格式* 999999.99 TO 999,999.99
/** * 数字转金额格式 * 999999.99 TO 999,999.99 * @param d * @return */ public static String doubleToStr(dou ...
- [译]Rxjs&Angular-退订可观察对象的n中方式
原文/出处: RxJS & Angular - Unsubscribe Like a Pro 在angular项目中我们不可避免的要使用RxJS可观察对象(Observables)来进行订阅( ...
- H - 看病要排队
看病要排队这个是地球人都知道的常识.不过经过细心的0068的观察,他发现了医院里排队还是有讲究的.0068所去的医院有三个医生(汗,这么少)同时看病.而看病的人病情有轻重,所以不能根据简单的先来先服务 ...
- dp practice 1
https://codeforces.com/problemset/problem/553/A dp+组合数学 dp[i] 放前i种颜色的方法数 #include<bits/stdc++.h&g ...
- 2019牛客暑期多校训练营(第九场)B Quadratic equation (平方剩余)
\((x+y)\equiv b\pmod p\) \((x\times y)\equiv c\pmod p\) 由第一个式子可知:\(x+y=b~or~x+y=b+p\) 先任选一个代入到第二个式子里 ...
- Grakn Forces 2020
比赛链接:https://codeforces.com/contest/1408 A. Circle Coloring 题意 给出三个长为 $n$ 的序列 $a,b,c$,对于每个 $i$,$a_i ...
- ACM-ICPC 2018 徐州赛区网络预赛(8/11)
ACM-ICPC 2018 徐州赛区网络预赛 A.Hard to prepare 枚举第一个选的,接下来的那个不能取前一个的取反 \(DP[i][0]\)表示选和第一个相同的 \(DP[i][1]\) ...
- hdu3436 Queue-jumpers(Splay)
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission ...