为Chromium编写托管包装器

Jes*_*ing 12 javascript c# webkit c++-cli chromium

今天我一直在互联网上弹跳,在阅读了很多解决方案之后,我决定写一个Chromium包装器将是一个有趣的学习经历; 更不用说我目前正在开展的几个项目是值得的.

我知道已经有一些包装在那里(awesomium,),更不要说一些基本的教程,像这样的,但是我看写我自己的包装.

我这样做的主要兴趣是,我能够创建和访问由WebKit生成的DOM结构,以便在C#中使用,在html依赖的任何javascript之前和之后都运行.我知道我可以使用HTMLAgilityPackMajestic12进行HTML解析,但我希望在经过试验和测试的引擎之上构建一些快速,高效且将在可预见的未来积极开发的引擎.WebKit是一个积极开发的布局引擎,嵌入在一些最流行的浏览器中,而V8是一个令人印象深刻的javascript引擎,因此决定使用Chromium.

看到我不关心实际渲染任何内容,而是我希望访问网页的结构,我觉得整体嵌入WebKit可能有点过分.即使在我希望javascript改变DOM的情况下,我仍然没有使用渲染结果.

总结:

我真正想要的Chromium是能够创建网页的DOM,以及(可选)使用Chromium令人印象深刻的V8引擎运行所述页面脚本以进一步操纵DOM的能力.我知道这将是一项艰巨的任务,但我很想知道你要说些什么. 简而言之,是否有人与WebKit和V8(可能通过Chromium)合作,谁可以评估这种可行性并借给我他们的专业知识(通过如何处理这个问题的建议)? 我知道我最终可以确定一种合适的方式来解决这个问题,但我希望能够加快这一过程.链接或者可能是一个相对简短而又甜蜜的高级别"我就是这样做的"是我正在寻找的(也就是说我不需要任何太过花哨的东西).

我希望我所要求的不是太过分散.如果你发现它太笼统并且想要关闭这个主题,请不要这样做,请留下评论,我会尽量缩小焦点.正如我刚刚说过的那样,自从我感冒以来,我的思绪在今天蹦蹦跳跳.

Joe*_*rra 0

我将Selenium WebdriverChromeDriver结合使用来进行自动化脚本、网页和验收测试。易于设置易于使用

这个想法是,您可以使用这个现有的界面,但将 Chrome 可执行文件的路径更改为ChromeOptions.BinaryLocation. 尝试将其指向 WebKit 的现有无头版本之一,例如WebKitDriver - 它可能会起作用。

我们的目标可能不同,但我自己对无头版本感兴趣。在我的开发机器上进行测试时,它不会那么引人注目,而且当测试失败时,我已经自动截取屏幕截图。