你如何截取angularjs应用程序的截图?

Mic*_*ins 10 javascript node.js angularjs

我试过了:

  • 节点webshot
  • phantomjs

我可以在本地做,但我无法截取基于angularjs的其他网站的截图.

赏金

能够截取任何angularjs应用程序的屏幕截图,其中包括页面上的jquery和angular.这里的每个站点:http://builtwith.angularjs.org/应该看起来好像我在浏览器中加载它.

必须能够通过终端获取屏幕截图,以便它可以在后台进程中运行,如工作人员或其他东西.

一个随机服务器(或任何应该能够访问异地网站并截取它的屏幕截图.)

它只需要一个url,它将不可避免地托管一个angularjs应用程序,并输出你期望在浏览器中看到的内容.

不需要是phantomjs或node-webshot.

更新1

截至昨晚,我正在这样做.

  • node-webkit(在chrome中的nodejs)编译为linux-32
  • 在随机笔记本电脑上打开
  • 当它检测到需要截取的屏幕截图时(暂时通过firebase),它会打开一个带有该URL的iframe
  • 等待10秒(加载网站/应用程序的合理时间)
  • 使用node-webkit api来截取自己

我有一些工作要做这个解决方案.

在此输入图像描述

更新2

这似乎是一个潜在的解决方案,但我发现大多数这些解决方案都需要打开浏览器并采用屏幕截图与无头浏览器(如phantomjs)相比.

更新3

我正在继续开发github上的生产就绪解决方案. https://github.com/clouddueling/angular-snapshot

如果您使用此代码并使用node-webkit.app构建它,您将能够运行屏幕截图服务器.

Ang*_*ity 2

使用browserstack在所有浏览器中测试您的应用程序,而无需安装每个浏览器,包括移动浏览器、不同的手机、平板电脑等。

支持Selenium自动化测试和屏幕截图支持本地测试,无需公共 URL。

屏幕截图 API可用于配置您需要的屏幕截图,Screenshooter是一个从命令行生成 BrowserStack 屏幕截图的工具。

由于它是商业产品,所以有一个试用期,但它制作精良,物有所值。您只能订阅一个月。我个人使用过并且强烈推荐它。