对于一些没有元素可以定位到的地方

 如上图  对于这种没有元素的地方或者一下子没有好的办法定位时  可以采用坐标进行定位(万不得已再使用)

这里使用坐标定位 可以实现将滚动条右滑(定位到一个地方,然后点击  相当于实现了滚动条的右划)

1.首先如何获取像素  先进行一次脚本 到需要坐标定位的页面进行截图(截图这里需要注意看下图)

 将截好的图放入电脑的画图工具  就可以获取到想要点的坐标(像素默认显示在左下角)

2.获取到坐标之后就是 实现定位

先导入   from selenium.webdriver.common.action_chains import ActionChains

ActionChains(driver).move_by_offset(x,y).click().perform() #点击坐标为 x,y的地方 ,这样就可以了

如果不确定自己的坐标是不是自己想要的  可以先把click()换为context_click() 右键点击  看是否在所在的位置上

3.使用坐标需要注意的是 当再次使用坐标  是在原来的基础上进行的

例如 第一次定位到了 (500,500) 当你想定位到 (250,750) 就要写(-250,250) #可以传入负数

如果不想每次都在原来的基础上  加减的话 可以每次使用完坐标 将其减回去 即 

ActionChains(driver).move_by_offset(x,y).click().perform() 

ActionChains(driver).move_by_offset(-x,-y).perform() #这里只是将坐标还原回去 不需要点击

万不得已不建议使用!

万不得已不建议使用!

万不得已不建议使用!

猜你喜欢

转载自www.cnblogs.com/wulinmiao/p/11490575.html