1. 程式人生 > >python+selenium七:下拉框、選項框、select用法 python+selenium七:下拉框、選項框、select用法

python+selenium七:下拉框、選項框、select用法 python+selenium七:下拉框、選項框、select用法

python+selenium七:下拉框、選項框、select用法

 

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import time
driver = webdriver.Firefox()
url = "https://www.baidu.com"
driver.get(url)
time.sleep(3)


# 1、下拉框
mouse = driver.find_element("link text", "設定")
ActionChains(driver).move_to_element(mouse).perform()
time.sleep(0.5)
driver.find_element("link text", "搜尋設定").click()
time.sleep(1)


# 方法一:直接定位
# 選擇下拉框選項的第三項
driver.find_element_by_xpath(".//*[@id='nr']/option[3]").click()
# 若此時點選後,下拉選項未收回,可點選整個下拉框,收回下拉選項
driver.find_element_by_xpath(".//*[@id='nr']").click()

 



# 方法二:二次定位
# 第一步:定位下拉框
parent = driver.find_element_by_id("nr")
# 第二步:在下拉框中,定位子元素,並操作
parent.find_element_by_xpath('.//option[@value="20"]').click()

 





# select用法:
from selenium.webdriver.support.select import Select
# 先定位到下拉框
s = driver.find_element_by_id("nr")

# 第一種:根據索引定位(從0開始)
Select(s).select_by_index(0)
# 收回下拉選項
s.click()


# 第二種:根據value屬性定位
# 如:value = 50
Select(s).select_by_value("50")
# 收回下拉選項
s.click()


# 第三種:根據選項內容定位
Select(s).select_by_visible_text("每頁顯示20條")
# 收回下拉選項
s.click()


 


選項框:
選項框的另外一種形式(這種不叫select,跟普通定位一樣)

 

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import time
driver = webdriver.Firefox()
url = "https://www.baidu.com"
driver.get(url)
time.sleep(3)


# 1、下拉框
mouse = driver.find_element("link text", "設定")
ActionChains(driver).move_to_element(mouse).perform()
time.sleep(0.5)
driver.find_element("link text", "搜尋設定").click()
time.sleep(1)


# 方法一:直接定位
# 選擇下拉框選項的第三項
driver.find_element_by_xpath(".//*[@id='nr']/option[3]").click()
# 若此時點選後,下拉選項未收回,可點選整個下拉框,收回下拉選項
driver.find_element_by_xpath(".//*[@id='nr']").click()

 



# 方法二:二次定位
# 第一步:定位下拉框
parent = driver.find_element_by_id("nr")
# 第二步:在下拉框中,定位子元素,並操作
parent.find_element_by_xpath('.//option[@value="20"]').click()

 





# select用法:
from selenium.webdriver.support.select import Select
# 先定位到下拉框
s = driver.find_element_by_id("nr")

# 第一種:根據索引定位(從0開始)
Select(s).select_by_index(0)
# 收回下拉選項
s.click()


# 第二種:根據value屬性定位
# 如:value = 50
Select(s).select_by_value("50")
# 收回下拉選項
s.click()


# 第三種:根據選項內容定位
Select(s).select_by_visible_text("每頁顯示20條")
# 收回下拉選項
s.click()


 


選項框:
選項框的另外一種形式(這種不叫select,跟普通定位一樣)