如何使用Selenium webdriver.executescript解析返回的css信息

时间:2016-04-26 02:49:08

标签: javascript selenium

节点环境中Javascript的新手......

使用下面的代码,脚本获取特定Web元素的css值,如何在javascript中解析它?

    driver.executeScript(script, ele).then(p => {
       console.log(p);            
    })

上面的代码在控制台中显示了这个结果。

{ class: 'container ng-scope', 'ng-controller': 'CalcCtrl' }

它作为Object类型返回,所以我无法弄清楚如何获取键的值" class" ...

如果我将代码更改为:

driver.executeScript(script, ele).then(p => {
       console.log(p);            
       var obj = JSON.parse(p);
       console.log(obj.class);
    })

我收到此错误... enter image description here

其中第27列是JSON.parse中的解析...

1 个答案:

答案 0 :(得分:0)

这个问题的答案是:

    driver.executeScript(script, ele).then(p => {
      if(p.class) console.log(p.class);               
    })

JavaScript对于无法找到的JSON对象中的任何键返回undefined,因此,If(p.class)确保此项数据具有名为class的键并将其打印出来。

enter image description here