目录
# 1. 概述
# 2. 实操
# 3. 查看下拉表内容(测试)
# 4. 完整代码(从 selenium 打开微博开始)
# 5. 实际效果
# 1. 概述
找到节点 - Select(节点) - .select操作
# 2. 实操
year = driver.find_element(By.XPATH,"//select[@node-type='birthday_year']")
yearDD = Select(year)
yearDD.select_by_visible_text("2000") # visible on the screen
其中第三步有三种 select 的方式:
推荐使用 select_by_visible_text ,即屏幕上显示的东西
# 3. 查看下拉表内容(测试)
year = driver.find_element(By.XPATH,"//select[@node-type='birthday_year']")
yearDD = Select(year)
ddlist = yearDD.options
print("Length of ddlist: ",len(ddlist))
for ele in ddlist:
print("Value is ",ele.text)
if ele.text == "2000":
ele.click()
break
# 4. 完整代码(从 selenium 打开微博开始)
# -*- coding = utf-8 -*-
# @Time : 2021/10/17 21:36
# @Author : LIUYU
# @File : HandleDropDown.py
# @Software : PyCharm
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select
s = Service("D:Softwarewebdriverschromedriver.exe")
driver = webdriver.Chrome(service=s)
driver.maximize_window()
driver.implicitly_wait(10)
driver.get("https://weibo.com")
driver.find_element(By.XPATH,"//a[text()='立即注册!']").click()
driver.switch_to.window(driver.window_handles[1])
year = driver.find_element(By.XPATH,"//select[@node-type='birthday_year']")
yearDD = Select(year)
# yearDD.select_by_value("2000")
yearDD.select_by_visible_text("2000") # visible on the screen
time.sleep(3)
# 5. 实际效果
# -*- coding = utf-8 -*-
# @Time : 2021/10/17 21:36
# @Author : LIUYU
# @File : HandleDropDown.py
# @Software : PyCharm
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.support.select import Select
s = Service("D:Softwarewebdriverschromedriver.exe")
driver = webdriver.Chrome(service=s)
driver.maximize_window()
driver.implicitly_wait(10)
driver.get("https://weibo.com")
driver.find_element(By.XPATH,"//a[text()='立即注册!']").click()
driver.switch_to.window(driver.window_handles[1])
year = driver.find_element(By.XPATH,"//select[@node-type='birthday_year']")
yearDD = Select(year)
# yearDD.select_by_value("2000")
yearDD.select_by_visible_text("2000") # visible on the screen
time.sleep(3)



