Selenium如何定位到canvas以及如何单击canvas上的元素

最近在做一个自动化的上传项目,碰到了Selenium需要点击canvas上的元素关闭网页蒙层的问题? 想了好久一直没有解决,在网上搜索和实践,终于找到解决方法。

1.定位canvas

这个比较简单,有很多方法,比如 find_element_by_id()

2.点击canvas中的元素,关闭蒙层

这里需要用到 ActionChains 这个类,它是继承selenium.webdriver这个父类,

使用方法也比较简单,主要是操作鼠标,移动到那个关闭按钮的坐标上

ActionChains(driver).move_to_element_with_offset(canvas,590,190).click().perform()

这里做下简单的解释,driver是浏览器的实例,move_to_element_with_offset() 通过相对定位找到元素,canvas是这个canvas画布,click()是鼠标的单击操作,perform()是执行操作,590是元素到左边边框的距离,190是元素到顶部边框的距离。

这样一行命令就完美解决了问题,关闭了网页上的canvas蒙层!

给出参考链接: https://www.pythonf.cn/read/99311

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注