javascript - Phantomjs - 截取网页截图

标签 javascript jquery phantomjs frontend

我有一个网址(例如 http://www.example.com/OtterBox-77-24444-Commuter-Series-Optimus/dp/B00A21KPEI/ref=pd_sim_cps_4)并想要对其进行屏幕截图并在我的网页上预览。意思是,用户点击预览按钮,PhantomJS需要将网页预览为PNG/JPEG

我也可以使用任何其他开源代码。

最佳答案

我假设您已经安装了 Phantomjs 并在 .bashrc 中创建了别名,或者已经更新了系统路径以调用 Phantomjs 二进制文件。如果没有,您需要仔细阅读一些初学者教程:http://net.tutsplus.com/tutorials/javascript-ajax/testing-javascript-with-phantomjs/

完成设置后,您将需要编写一个简单的 javascript 文件,您将在终端(或 shell,如果您使用的是 Windows)中调用该文件。我将在下面提供一个简单的示例脚本。

var WebPage = require('webpage');
page = WebPage.create();
page.open('http://google.com');
page.onLoadFinished = function() {
   page.render('googleScreenShot' + '.png');
   phantom.exit();}

然后,保存您的 js 文件。打开终端或 shell 并运行以下命令

phantomjs yourFile.js

就是这样。检查调用 js 文件的目录,您应该有一个带有网页屏幕截图的 png 文件。

这非常简单,并且使用 phantomjs 有很多注意事项,但这只是我能做到的最基本的内容。如果您需要 phantomjs 的其他配方,请尝试查看以下示例脚本:https://github.com/ariya/phantomjs/wiki/Examples

关于javascript - Phantomjs - 截取网页截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17189745/

相关文章:

javascript - 如何使用 jQuery 激活按钮?

jquery - 如何阻止 Kendo UI 网格列格式向上舍入

javascript - 有没有办法对网站上的每个页面进行截图?

javascript - NodeJS 从哪里开始?

javascript - 如何访问其他js文件的express模块​​,express模块​​已经包含在app.js中

javascript - 使函数四舍五入到最近的刻钟

javascript - img onload 函数有时未定义

javascript - 使用 PhantomJS 在同一行打印数据

selenium - 使用 Behat、Mink 和 PhantomJS 上传文件

javascript - 如何在 Ember.js 中定义并发状态?