微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

selenium web中的下拉选项操作



from selenium import webdriver
from selenium.webdriver.support.ui import webdriverwait
from selenium.webdriver.common.action_chains import ActionChains
from selenium .webdriver.support.select import Select
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.common.exceptions import TimeoutException,NoSuchElementException
driver = webdriver.Chrome()
driver.get("https://baidu.com")
wait=webdriverwait(driver,10) #显示等待
try:
# 鼠标移动到设置按钮
setting_element=wait.until(EC.presence_of_element_located((
By.LINK_TEXT,"设置"
)))
action_chains=ActionChains(driver)
action_chains.move_to_element(setting_element).perform()
# 点击高级设置
wait.until(EC.presence_of_element_located((
By.XPATH, "//div[@class='bdpfmenu']//a[contains(text(),'高级搜索')]"
))).click()


# 方法一:定位到下拉框,再点击选项

wait.until(EC.presence_of_element_located((By.XPATH, "//select[@name='gpc']/option[4]"))).click()


# 方法二 使用Select模块
format_selector=Select(wait.until(EC.presence_of_element_located((
By.XPATH,"//select[@name='ft']"
))))

# format_selector.select_by_value("all")
# format_selector.select_by_visible_text("所有格式")
format_selector.select_by_index(6) #从0开始计算的

wait.until(EC.presence_of_element_located((
By.XPATH,"//input[@id='adv_keyword']"
))).send_keys("柠檬班")

wait.until(EC.presence_of_element_located((
By.XPATH,"//input[@class='advanced-search-btn']"
))).click()

# 获取当前窗口数
windows=driver.window_handles
# 切换到最新的窗口
driver.switch_to.window(windows[-1])
file_name="lefix"+".png"
driver.get_screenshot_as_file(file_name)
except (TimeoutException,NoSuchElementException) as e:
print("出现异常{}".format(e))

finally:
driver.quit()




版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐