在使用selenium 的时候我们通常通过以下几种方式去定位元素位置
browser = webdriver.Chrome(executable_path ='E:/chromedriver_win32/chromedriver')
browser.maximize_window()
browser.get(url)
#按照id索引,返回一个元素,有时并不精准(当元素没有id时)。
browser.find_element_by_id()
#返回多个元素
browser.find_elements_by_id()
#按照xpath索引,返回单个和多个元素
browser.find_element_by_xpath()
browser.find_elements_by_xpath()
但是当以上几种都无法定位到我们想要的元素的时候呢?坐标很显然是好办法,话不多说直接看代码
from selenium.webdriver.common.action_chains import ActionChains
#按照坐标点击
ActionChains(browser).move_by_offset(x,y).click().perform()
#点击输入框并输入。
ActionChains(browser).move_by_offset(x,y).click().send_keys('你的内容').perform()
完美执行。
当使用Selenium进行网页元素定位时,除了常见的id、xpath等方法,还可以利用坐标定位。当常规方法无法精准找到目标元素时,ActionChains模块的move_by_offset方法成为有效手段,它允许通过坐标点击和输入内容,实现精准交互。这种方法在处理动态加载或者无特定标识符的元素时尤为有用。
7244

被折叠的 条评论
为什么被折叠?



