pyqone 发表于 2016-9-5 10:05:32

怎么使用WebDriver定位canvas标签中的元素

刚入职几个月,由于之前未接触过selenium,完全不知道怎么定位canvas标签中的元素,望各位大神能指教


梦想家 发表于 2016-9-5 14:28:50

定位方式有好多,可以用xpath定位

梦想家 发表于 2016-9-5 14:29:33

或是用ide录制查看一下他的定位里面所有定位都会显示出来

pyqone 发表于 2016-9-5 14:40:16

梦想家 发表于 2016-9-5 14:29
或是用ide录制查看一下他的定位里面所有定位都会显示出来

悄悄地告诉你,这方法我试了···结果显示“css=canvas”,然后让它跑起来以后,到那一步就报错了:'(

pyqone 发表于 2016-9-5 14:41:31

梦想家 发表于 2016-9-5 14:28
定位方式有好多,可以用xpath定位

Xpath也定位不了,无法获取那个图标的xpath,得到的结果就是div/canvas···

若尘_51 发表于 2016-9-5 14:48:09

你的脚本发出来看看,另外的HTML页面可以的话,也一并放上来,给大伙看看。

梦想家 发表于 2016-9-5 15:53:27

191707998selenium群 进去问去 定位的问题肯定不是大问题

pyqone 发表于 2016-9-6 08:24:18

若尘_51 发表于 2016-9-5 14:48
你的脚本发出来看看,另外的HTML页面可以的话,也一并放上来,给大伙看看。

HTML代码太长,毕竟是一个web软件,我的脚本也很简单,只是想点击那个设备点而已。就两行主要的代码
/*省略前代码*/
Actions act = new Actions(driver);
act.click(driver.findElement(By.cssSelector("html body div#Judge_MainDiv div#Study_RightMain div#map_canvas div.gm-style div div div div div div div canvas"))).perform();

pyqone 发表于 2016-9-6 09:02:00

梦想家 发表于 2016-9-5 15:53
191707998selenium群 进去问去 定位的问题肯定不是大问题

好的,谢谢,我加入看看:handshake

pyqone 发表于 2016-9-8 08:29:54

梦想家 发表于 2016-9-5 15:53
191707998selenium群 进去问去 定位的问题肯定不是大问题

不行啊···那个群不给力啊,完全没人说话:L

apollo0687 发表于 2016-9-8 15:10:03

用xpath试试呢

pyqone 发表于 2016-9-9 08:29:49

apollo0687 发表于 2016-9-8 15:10
用xpath试试呢

xpath没用,只要是定位到canvas的都没用,因为canvas标签是256*256px的,而设备点只是标签中的一个小部分大概25*25px
页: [1]
查看完整版本: 怎么使用WebDriver定位canvas标签中的元素