1.最近在用公司的一个工具拉取一些业务数据时发现有很多重复的页面操作,每次都要重复的选择机构与对应的表,点击添加操作(十几家机构加起来要手工添加两百多次),于是用python写了一个UI脚本让机器去执行这些重复的操作,即省时效率又高。
#coding:utf8
from selenium import webdriver
from config.params import *
from selenium.webdriver.support.ui import Select
import time
class pullData():
path="E:/chromedriver.exe"def __init__(self,url): self.url=url self.wd = webdriver.Chrome(self.path)def openBrowser(self): self.wd.get(self.url) self.wd.maximize_window()def closeBrowser(self): self.wd.quit()def findeleOrg(self): hospitals = self.wd.find_elements_by_css_selector("select[name='hospitalCode']>option") return hospitalsdef findeledept(self): hospitalDatatype = self.wd.find_elements_by_css_selector('select[name$="DataType"]>option') return hospitalDatatypedef deleteCords(self): while True: cords=self.wd.find_elements_by_css_selector("table[border='1'] tr>td:nth-of-type(8)>input[value='删除']") if len(cords)==0: break cords[0].click() time.sleep(1) #定位元素前后要加等待时间,特别是刷新的页面def hospitalConfig(self): self.wd.find_element_by_partial_link_text(u"医院视图SQL").click() hospitals=self.findeleOrg() hospitalDatatype=self.findeledept() for num in range(len(hospitals)-1): hospitals = self.findeleOrg() hospitals[num].click() for numdata in range(len(hospitalDatatype)-1): hospitals = self.findeleOrg() hospitals[num].click() hospitalDatatype = self.findeledept() time.sleep(1) hospitalDatatype[numdata].click() time.sleep(2) self.wd.find_element_by_css_selector("input[type='submit']").click() self.wd.find_element_by_id("submit_id").click() self.wd.find_element_by_partial_link_text(u"医院视图SQL").click()
if name=="main":
pullD = pullData(url)
pullD.openBrowser()
pullD.hospitalConfig()
pullD.deleteCords()
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦