美文网首页
使用jenkins+python实现公司平台一键构建登陆

使用jenkins+python实现公司平台一键构建登陆

作者: 远航天下 | 来源:发表于2018-07-04 14:46 被阅读0次

一、背景:

随着公司的业务发展,操作管理平台的频率也越来越多,而且公司的平台token是失效时间很短,重复的登录让人烦躁不已,重复耗时,效率比极差,重复登录巨low无比,汗~~

二、目标:

实现公司业务管理平台jenkins一键构建登录,用户名密码等自动填写、验证码自动识别,解放双手,提高生产力

既定目标如下:

三、准备工作:

1  python3

2  第三方库:Pillow ; pytesseract ;selenium

3  验证码驱动文件安装:tesseract-ocr-setup-4.0.0-alpha.20170804.exe (安装目录随意,最好不要中文目录)

4  修改python目录:C:\Python36\Lib\site-packages\pytesseract下的"tesseract_cmd" 字段值为你验证码的驱动目录

5  配置环境变量:PATH→ C:\softuser\tesseract-ocr (驱动安装目录)

                             TESSDATA_PREFIX→ C:\softuser\tesseract-ocr\tessdata(驱动安装目录的下级目录)

6  jenkins安装和配置使用

四、代码实现过程:

1、导入相关库包:

导入第三方库

from PIL import Image # python3版本需要安装Pillow库即可使用

from pytesseract import *

from selenium import webdriver

import time

2、定义类初始化参数

c初始化数据

说明:初始化时,参数类型可根据自己习惯任意定义,此处用到的是字典和列表

3、定义打开浏览器函数

打开火狐浏览器

def driver_init(self,url):

      self.driver = webdriver.Firefox()

      self.driver.get(url)

      self.driver.maximize_window()

说明:此处使用的是火狐浏览器,可以根据实际情况,使用其他浏览器,只要下载对应的驱动即可使用

4、获取验证码区域的截图

获取验证码区域截图 得到的验证码区域截图

说明:此处可进一步优化,可固定屏幕大小来进行验证码区域的截取,提高准确性

5、识别验证码

识别验证码

def identification_verifying_code(self): # 对验证码图片进行处理,得到验证码字符串

      '''识别验证码'''

      image = Image.open('yzm.png')

      code = pytesseract.image_to_string(image)

      print("你的验证码是:" + code)

      return code

说明:上面做的很多工作,其实都是为了这块做准备的,识别验证码的过程是很简单的

6、登录函数

登录函数

说明:定位页面元素,传入对应的值,点击登录按钮

7、run函数

run函数

def use_login(self):

      self.login_cscnew(addres=self.platform_address.get("beta_cscnew"), brthid=self.beta_csc_list[0],     username=self.beta_csc_list[1], password=self.beta_csc_list[2])

说明:运行主方法,调用全部整合资源

8、调用方法:

调用方法

五、jenkins配置过程

1、安装相关的python插件

已安装的python插件

2、创建一个自由风格的工程,配置如下:

构建配置

3、立即构建

立即构建

4、构建成功

相关文章

网友评论

      本文标题:使用jenkins+python实现公司平台一键构建登陆

      本文链接:https://www.haomeiwen.com/subject/lvceuftx.html