python+selenium UI指令碼用例

來源:互聯網
上載者:User

標籤:python   selenium   UI   

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()

python+selenium UI指令碼用例

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.