【发布时间】:2012-09-27 12:15:14
【问题描述】:
我正在寻找具有以下属性的.net 嵌入式无头浏览器:
- 支持 Ajax/HTML5 的现代 Webkit 级别,最好基于 Webkit
- 支持无头模式(没有可见的浏览器),速度越快越好
- 零安装(类似于 browser.exe 和复制到项目中的 c# 包装 DLL)
- 可靠的生产用于基本任务(如复杂页面的屏幕截图),我不是在这里寻找 99.9999 的可靠性,但它需要比 Selenium 更稳定和更快,我们有很多冗余所以偶尔的错误是好的。
- 开源或免费用于商业用途(最好是 MIT 许可),而不是废弃的项目
如果不需要安装 PhantomJS 将是理想的选择。 PhantomJS 似乎符合我除了“不安装”部分之外的所有标准,因此它是当前最喜欢的,但在我们投入时间设置和测试用于安装 PhantomJS 的多环境部署过程之前(这很耗时,因为我们使用了数千个数十个数据中心中的计算机)我想确保我没有错过更好的选择。我对非 webkit 实现持开放态度,但它需要具有与现代 webkit 浏览器相同的功能,并且没有奇怪的渲染或 AJAX 问题。如果您认为这是可行的方法,我也有兴趣了解 PhantomJS 用于截屏 AJAX/HTML5 页面的可靠性。例如,如果渲染页面的服务器没有显卡或高屏幕分辨率,那么无头浏览器会继承它并渲染一个丑陋的页面吗?
【问题讨论】:
-
PhantomJS 是一个提取 zip 文件以获取 exe 的简单案例。不知道如何才能拥有比这更简单的软件。
-
这是个好消息!这篇文章另有建议。也许它已经过时或不正确skookum.com/blog/…如果您确定不需要安装,我们可以直接调用exe打开无头浏览器,那么如果您想在答案下发布,我会接受它
-
我猜这篇文章听起来很难的原因是它是不久前写的。 Phantomjs 是相当新的,它只是最后几个版本才开始成为一个可用的工具,而不会让你跳过太多的圈子。当他尝试它时,很可能它不能作为预编译的二进制文件提供。现在肯定是,这让它变得非常容易。
标签: .net browser phantomjs headless