java +PhantomJS + rasterize.js 实现网页的截图(无需打开浏览器),亲测有效

利用java实现一个网页的滚动截图,实现中无需打开浏览器。基于phantomjs 和rasterize.js实现。

PhantomJS是一个基于webkit的javaScript API。它使用QtWebKit作为它核心浏览器的功能,使用webkit来编译解释执行javaScript代码。任何你可以基于在webkit浏览器做的事情,它都能做到。它不仅是个隐性的浏览器,提供了诸如css选择器、支持wen标准、DOM操作、json、HTML5等,同时也提供了处理文件I/O的操作,从而使你可以向操作系统读写文件等。phantomJS的用处可谓非常广泛诸如网络监测、网页截屏、无需浏览器的wen测试、页面访问自动化等。
截图脚本:rasterize.js

所需环境:D:\phantomjs-2.1.1-windows\bin\phantomjs.exe

将rasterize.js也放在统计目录

java +PhantomJS + rasterize.js 实现网页的截图(无需打开浏览器),亲测有效

可以通过cmd 测试所需环境是否有效。在你的制定目录是否有生成的图片

java +PhantomJS + rasterize.js 实现网页的截图(无需打开浏览器),亲测有效

上代码:

java +PhantomJS + rasterize.js 实现网页的截图(无需打开浏览器),亲测有效

项目基于Springboot开发

controller: