我目前在我的网站上的几个地方实施了谷歌图表,我可以将它们转换为图像并下载它们。这很容易。
现在我希望创建这些图表并将它们转换为服务器上的所有图像。
我已经做了很多搜索,我没有提出这方面的例子,也没有任何问题,这开始让我认为这是不可能的。
我知道这些图表通常是在运行时使用javacript在客户端的浏览器中创建的,所以我想我想知道是否有办法在没有浏览器的情况下在我的服务器上运行google图表javascript,并创建并保存这些图像?
我昨天被告知服务器端javascript,直到那时我不知道它存在,但这可能是一个选项吗?
有没有办法在.NET中模拟浏览器并输出图像?我可以在服务器上运行浏览器并获取图像吗?
还有其他办法吗?
或者这个想法是不可能的?
答案 0 :(得分:2)
您拥有的一个选项是使用无头浏览器在本地执行代码,然后从那里提取图像。看看PhantomJS的例子,看看有什么可能
http://phantomjs.org/examples/
如果你需要偶尔运行它,可以在你需要的每个请求上使用独立的phantomjs,但如果你打算经常使用它,请看看这里列出的截图项目{{3} }
其中一些启动节点服务器,因此您不需要一直启动幻像,它将为您节省运行时间。如果您首先尝试独立解决方案并发现它太慢,那么这是值得的。
答案 1 :(得分:2)
PhantomJS是一个运作良好的选项。我在vida.io的团队开发了一个基于云的解决方案来为网站生成图像。它针对svg进行了优化(特别是d3.js数据可视化)。但它可以用于为网站内的任何元素生成图像。
查看我们的网络界面:
您可以使用我们的服务器或运行您自己的服务器。服务器堆栈是nodejs。