env-js、phantom JS、slimmerJS 或任何无头浏览器是否可以嵌入到 C 应用程序中?这就是我需要做的:我有一个 C 应用程序,它通过 HTTP 和 HTTPS 连接到几个服务器。到目前为止,我得到了每个页面,弄清楚它做了什么,(主要是 Javascript),提取了我需要的部分代码(我还实现了一个非常简单的字符串解析器/提取器)并通过发送 HTML 代码来实现流程一个(安全)套接字并读回响应。那部分仍然工作顺利。
直到我碰到一组非常复杂(阅读:混淆和 looong)的 javascript 页面一个接一个地链接,其中包括几个脚本和服务器端编程,然后我意识到我无法获得“可维护”程序与我采取的程序。
所以过去几天我一直在寻找可嵌入的 Javascript 解释器。碰到了可嵌入 C 的蜘蛛猴,但由于我无法控制收到的脚本,因此它缺乏 DOM 实现使其不适合。我也考虑过实现 DOM 接口,但老实说,这让我的主要项目分心了太久。
然后我考虑了上面提到的无头浏览器。阅读了我找到的所有关于它们的信息,寻找某种库来与它们交互,并且在没有此类库的情况下,考虑过破解代码,结果发现甚至试图破解 phantomJS 以将其嵌入到我的 C 系统中比在蜘蛛猴中实现 DOM 接口还要疯狂。
该系统目前在 Windows 上运行,我正在使用 MinGW 来开发它,但它的最终目标是在 Raspberry PI 中实现,所以我越能拥有纯 C 源代码,移动系统就越容易到它的最终目的地。我的意思是:如果它们是预先构建的,我可以同时使用 Windows 库,但不能错过它们必须在普通编译器中编译和生成的需求。我还没有 Raspberry PI,但我并不期待任何花哨的开发工具集(我可能错了)
最后,对于好奇的内部人士,该系统是一个股票筛选器,生成带有指标的图形,这些指标放在网络服务器中,并通过雅虎通生成警报(发送价格状况通知)(这个选择主要是由于便携性和可用性源代码)。
我将非常感谢您帮助找到一种方法来实现/嵌入到 C *any* Javascript 解释器中,该解释器已实现 DOM 接口。
问候。
阿尔弗雷多·梅拉兹