我目前正在使用“Selenium”来开发Java中的web自动化脚本。我试图找到一种方法将整个滚动DIV(html)捕获到图像中。任何快速解决方案??
答案 0 :(得分:0)
当您说想要内容时,您的意思是HTML还是仅仅是屏幕上的文字?如果是文本,您可以使用像selenium.getText(//div[@id='theDiv'])
这样的XPATH。如果是HTML,您可以将页面上的JavaScript评估为innerHTML,如下所示:
selenium.getEval("this.browserbot.getCurrentWindow().document.getElementById('theDiv').innerHTML")
答案 1 :(得分:0)
您可以使用Selenium的captureEntirePageScreenshot(String imageFileURLToWrite)获取整个页面的屏幕截图。
原则上应该可以对图像进行后处理以仅提取DIV。您需要计算出DIV的确切像素范围,这可能需要使用getEval()在客户端上运行一些JavaScript。
答案 2 :(得分:0)
非常简单。
您从浏览器窗口中截取屏幕截图
您获取Div的位置X和Y
你取Div的宽度:宽度和长度
使用相同尺寸创建位图,并使用步骤1中截取的屏幕截图中的2和3信息复制子图像。
如果你想我可以给你C#代码。但它并不那么难,我相信你可以自己编写代码。