python3读取数据库短信验证码

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

现在网站好多都要短信验证,做自动化时想要绕过有很多方法

1.测试环境注释掉这个功能,但发布到其它环境怕会有遗漏

2.万能码,但不小心就会被其它开发给覆盖了,或者不小心点击了发送验证码后,你这个验证码就失效了

3.自己想办法,比如读取数据库,拿到最新的验证码

https://www.cnblogs.com/woider/p/5926744.html   学习了这位大神的帖子才有了方向,感谢!

今天讲第三种方法,直接贴代码

python3读取数据库短信验证码_第1张图片

讲几点,python2支持mysqldb,但python3还不支持,所以只能用pymysql代替,安装也很简单,终端命令:pip install pymysql即可 

看代码里的connect:db是指你读取的数据库名称;这里踩的坑是怎么把数据库里取出来的check_code转换为数字,直接使用code.split是不行的,左试右试都是不行,一直报错,最后没办法了,试着打印下 code的类型,麻的,居然是tuple,其实我内心在看到code格式的一瞬间就已经坚信它是str了,所以根本没往这上面想,要不找不出原因,我估计也不会去打印这个type~~ 所以除了基础要扎实,一定要有opening mind(这两者我都还欠缺~~)。知道了数据类型后,那个单引号的分割我不会,百度了下,添加转义符,就能很愉快的使用split提取出数字了

另一个提取的方式(取下标,从0开始数)

python3读取数据库短信验证码_第2张图片

——————————————————————————————————————————————

python3读取数据库短信验证码_第3张图片

这个方法在调用 的时候发现有点问题,因为我没有写方法,所以在调用mysql这个文件的时候他已经直接调用了,导致我的验证码一直读的是第二条,而不是最新的第一条。所以这里添加了一个方法,再加一个return去调用first变量,就没有问题了

data = driver.mysql.usemysql()

转载于:https://my.oschina.net/EvanDev/blog/3029004

你可能感兴趣的:(python3读取数据库短信验证码)