8、base
base-find_element.py
from rip_dictionary.rip_datacreate.base.read_ini import ReadIni from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By import os,json #公共存放 class FindElement(): def __init__(self,driver=None): self.driver = driver def get_element(self,key,node,file_name='ElementConfig'): read_ini = ReadIni(node,file_name) data = read_ini.get_value(key) by = data.split('>')[0] value = data.split('>')[1] try: if by == 'id': return self.driver.find_element_by_id(value) elif by == 'name': return self.driver.find_element_by_name(value) elif by == 'className': return self.driver.find_element_by_class_name(value) else: return self.driver.find_element_by_xpath(value) except: return None def get_elementByWait(self,key,node,file_name='ElementConfig'): read_ini = ReadIni(node,file_name) data = read_ini.get_value(key) by = data.split('>')[0] value = data.split('>')[1] try: if by == 'id': return WebDriverWait(self.driver, 10,0.5).until(EC.visibility_of_element_located((By.ID, value))) elif by == 'name': return WebDriverWait(self.driver, 10,0.5).until(EC.visibility_of_element_located((By.NAME, value))) elif by == 'className': return WebDriverWait(self.driver, 10,0.5).until(EC.visibility_of_element_located((By.CLASS_NAME, value))) else: return WebDriverWait(self.driver, 10,0.5).until(EC.visibility_of_element_located((By.XPATH, value))) except: return None def get_configVal(self,key,node,file_name='publicParameters'): read_ini = ReadIni(node,file_name) data = read_ini.get_value(key) return data if __name__ == '__main__': aa = FindElement() bb = aa.get_configVal('db_rip','DBConnectConfig') abc = json.loads(bb) print(abc) # print(abc['host'])
base-random_method.py
import random class randomMethod(): def get_random_name(self): data = ''.join(random.sample('zyxwvutsrqponmlkjihgfedcba123456', 5)) data = '测试'+data return data def get_random_code(self): data = ''.join(random.sample('1234567890', 5)) data = 'test'+data return data if __name__ == '__main__': aa = randomMethod() b = aa.get_random() print(b) print(type(b))
base-read_ini.py
import configparser,os class ReadIni(): def __init__(self,node=None,file_name=None): if file_name == None: file_name = os.path.abspath('../')+"/config/ElementConfig.ini" else: #os.path.abspath('../')是E:\rip_auto # file_name = os.path.abspath('../') + "/config/"+ file_name +".ini" file_name = os.path.abspath('../') +"/rip_auto" +"/rip_dictionary" + "/rip_datacreate" + "/config/publicParameters.ini" # file_name = r'E:\rip_auto\rip_dictionary\rip_datacreate\config\publicParameters.ini' if node == None: self.node = "CreateClueElement" else: self.node = node self.cf = self.load_ini(file_name) #加载文件 def load_ini(self,file_name): cf = configparser.ConfigParser() cf.read(file_name,encoding="utf-8") return cf #获取value的值 def get_value(self,key): data = self.cf.get(self.node, key) return data if __name__ == '__main__': read_init = ReadIni('DBConnectConfig','publicParameters') print(read_init.get_value('db_rip'))
base-request_method.py
import requests import json class RequestMethod: def post_main(self,url,data,cookies=None): if cookies !=None: res = requests.post(url=url,data=data,cookies=cookies,verify=False) # print("请求的url:%s"%url+"请求的参数:%s"%str(data)) else: res = requests.post(url=url,data=data,verify=False) # print("请求的url:%s" % url + "请求的参数:%s" % str(data)) return res def get_main(self,url,data=None,cookies=None): if cookies !=None: res = requests.get(url=url,data=data,cookies=cookies,verify=False) else: res = requests.get(url=url,data=data,verify=False) return res def json_main(self,url,json=None,cookies=None): if cookies !=None: res = requests.post(url=url,json=json,cookies=cookies,verify=False) else: res = requests.post(url=url,json=json,verify=False) return res def upload_main(self,url,data=None,files=None,cookies=None): if cookies !=None: res = requests.post(url=url,data=data,files=files,cookies=cookies,verify=False) else: res = requests.post(url=url,data=data,files=files,verify=False) return res def run_main(self,method,url,type,data=None,cookies=None): requests.packages.urllib3.disable_warnings()#防止警告报错 if type == "json": if method == 'post': res = (self.post_main(url,data,cookies)).json() elif method == 'post_json': res = (self.json_main(url, data, cookies)).json() else: res = (self.get_main(url,data, cookies)).json() return json.dumps(res,ensure_ascii=False) elif type == "html": if method == 'post': res = (self.post_main(url, data, cookies)).text else: res = (self.get_main(url, data, cookies)).text return res if __name__ == '__main__': r=RequestMethod() url='http://rip-stage-test3.msxfcloud.test/api/sysmgr/main/login' data={ "userName": "admin", "password": "ZqONDX8Dd3iEjTRKG4HDeg==", "secFactorCode": "1" } headers= { "Content-Type":"application/json" } aa= r.run_main('post_json',url,"json",data,headers) print(aa)

浙公网安备 33010602011771号