1.選擇一個下拉框
看一下網頁上的結構
當我們點擊這個公告類型的時候,會出現拉下框,並且激活下拉菜單,我們再看一下點擊后的結構:
因此,我的思路就是通過點擊下拉菜單的按鈕,激活下拉菜單后,在進行元素定位,我們看一下代碼:
# 點擊請假類型(激活下拉框) driver.find_element_by_class_name('ant-select-selection__placeholder').click() time.sleep(1) # 生產隨機數 key = random.randrange(1, 5) # 根據隨機數選擇下拉框 if key == 1: self.param.find_element_by_xpath('//*[@class="ant-select-dropdown-menu-item"][1]').click() elif key == 2: self.param.find_element_by_xpath('//*[@class="ant-select-dropdown-menu-item"][2]').click() elif key == 3: self.param.find_element_by_xpath('//*[@class="ant-select-dropdown-menu-item"][3]').click() elif key == 4: self.param.find_element_by_xpath('//*[@class="ant-select-dropdown-menu-item"][4]').click() else: print('error')
2、定位時間控件
1.如圖,要選擇2號:
查看html源碼結構:
可提出該元素的XPATH為:
//*[@class='ant-calendar-tbody']/tr/td[4]
2.選擇時間
查看html源碼結構:
可提出該元素的XPATH為:(選擇09:00)
//*[@class='ant-calendar-time-picker-combobox']/div/ul/li[11] //*[@class='ant-calendar-time-picker-combobox']/div[2]/ul/li
?這里有個問題,選擇09點后無法點擊00分
經手工驗證,鼠標移到分的一列后可選擇。
解決辦法:將鼠標移到分的一列
pyautogui.moveTo(669, 560)