我的具体目标是从 Canvas 容器中获取图像 URL,这是所做的:
JavascriptExecutor jse = (JavascriptExecutor) driver;
Object imageURL = jse.executeScript("arguments[0].toDataURL('image/png');",canvas);
我得到一个 null 的返回值。
然后我尝试做一些更基本的事情,比如获取 Canvas 的宽度属性。
JavascriptExecutor jse = (JavascriptExecutor) driver;
Object width= jse.executeScript("arguments[0].getAttribute('width');",canvas);
我又一次变得空了。 Canvas WebElement
由 Selenium 很好地识别,并且它的“宽度”属性存在 - 我可以使用 WebDriver
的 getAttribute
方法检索它。
我想我用错了。
感谢您的帮助!
最佳答案
将 return
关键字添加到您的脚本中。
PS:如果问题解决了请告诉我,否则我们可以尝试其他方法。
关于javascript - 如何在 Java 中使用 Selenium 获取 Canvas 元素内图像的 URL,以及如何使用 JavascriptExecutor?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40510921/