使用SeleniumJava提取数据层对象

使用SeleniumJava提取数据层对象,selenium,selenium-webdriver,Selenium,Selenium Webdriver,我试图找到一种方法,使用SeleniumWebDriver,通过java从网站中提取datalayer对象。 我正在尝试将发送到gtm的内容自动化。 有人能告诉我如何继续吗。只需使用JavascriptExecutor通过WebDriver调用JavaScript即可。以下内容从数据层中提取字符串值: Object x = ((JavascriptExecutor) driver).executeScript("dataLayer[0]['content']['name']"); 最简单的方法

我试图找到一种方法,使用SeleniumWebDriver,通过java从网站中提取datalayer对象。 我正在尝试将发送到gtm的内容自动化。
有人能告诉我如何继续吗。

只需使用
JavascriptExecutor
通过WebDriver调用JavaScript即可。以下内容从
数据层中提取字符串值:

Object x = ((JavascriptExecutor) driver).executeScript("dataLayer[0]['content']['name']");
最简单的方法是首先在浏览器控制台(Chrome开发者工具、Firebug等)中手动测试JavaScript命令。一旦知道它返回正确的值,只需在自动测试中传递到
executeScript()

API不是类型安全的,所以需要小心地将返回的对象强制转换为正确的类型