Selenium之悬浮菜单定位


1、 用ActionChains定位

  • 一般用ActionChains即可
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from time import sleep

driver=webdriver.Chrome()
driver.get("https://www.baidu.com/")
driver.maximize_window()
driver.find_element_by_css_selector("#kw").send_keys("锄禾")


#鼠标悬停
#悬停在设置上
above=driver.find_element_by_css_selector(".pf")
ActionChains(driver).move_to_element(above).perform()
driver.find_element_by_link_text('搜索设置').click()
sleep(3)
driver.quit()


2、JS定位

  • 有些悬浮菜单,可以用第一种方法定位,但成功率不是100%,甚至无效,可以用这种方法
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from time import sleep

driver=webdriver.Chrome()
driver.get("https://www.baidu.com/")
driver.maximize_window()
driver.find_element_by_css_selector("#kw").send_keys("锄禾")


#鼠标悬停
#悬停在设置上
above = driver.find_element_by_link_text('设置')
driver.execute_script("$(arguments[0]).mouseover()",above)
driver.find_element_by_link_text('搜索设置').click()


sleep(3)
driver.quit()

猜你喜欢

转载自blog.csdn.net/chuhe163/article/details/104147079
今日推荐