前言
在上一次学习中,您学习了如何在不同的对象中定位页面元素(id、class_name、tag_name、xpath、css等),从而实现了伪点击功能。 当然,这是早期网络自动化的一点成绩。 如果gxdsw认为它们应用得差不多,您不是无意中想到了如何通过连接到数据库来比较页面数据与数据库中的匹配项吗? 学习pyhon如何连接到SQL数据库,并处理查询的数据,最终获得想要的数据。
一.安装
PyMySQL是在python上操作MySQL的模块(库),正文python版本: 3.6 PyMySQL版本:0.8.0
在命令行中键入pip安装pymysql
二.使用操作
1、执行SQL
注:如果存在中文,则必须在连接中添加charset='utf8 '。 否则,中文就会表示乱码。
2、获取查询数据
3、获取新建数据的自增加ID
可以获取最新的自我增加的ID,也就是最后插入的数据ID
4、移动光标
所有操作都依赖于光标,还需要光标控制
5、fetch数据类型
默认检索的数据为鼻祖类型。 如果您想要字典类型的数据,请执行以下操作
6、调用存储过程
a、调用没有引用的存储过程
b、调用参与式存储过程
三.关于防止pymysql注入
1、字符串连接查询,注入
常规查询语句:
要创建注入语句:
2、避免注入,使用pymysql提供的参数语句
常规参数化查询
构建注入,参数查询注入失败。
结论在excute中执行SQL语句时,必须使用参数化方式。 否则,必然会产生SQL注入漏洞。
3、使用存储mysql存储过程动态执行SQL注入防止
使用MYSQL存储过程自动防止注入,并将SQL动态传递给存储过程并执行语句。
用pymsql调用
四.使用with简化连接过程
每次关闭连接都很麻烦,并使用上下文管理简化连接过程