-4

我目前正在用 C++ 在 MS Visual Studio 2013 中编写一个具有多种功能的 Windows 应用程序。其中一项功能必须是它可以在屏幕上绘制实际数据。我已经成功地绘制了图表,但我还没有得到数据。使用 Wininet 库,我可以连接到网站并将 HTML 代码保存在文件中。对于某些网站来说,这就足够了,因为数据是 HTML 代码的一部分,在解析之后,我可以绘制数据。但是我要从中检索数据的网站是用 Java 编写的,并且数据是 Java 对象。现在我已经下载了 RapidjSON 库来处理 Java 对象。谁能帮助我进一步了解如何从网站上检索 Java 对象?有没有我不知道的图书馆?我可以使用 WiniNet 向网络服务器发送请求并获取数据吗?

我还注意到,如果我将整个网站保存在 Chrome 中,数据就会出现在文档中。但是当我使用 C++ WiniNet 程序保存它时,文档中不存在数据。有没有办法保存数据?

4

1 回答 1

0

对于遇到同样问题的任何人:有一个名为 Selenium 的网络驱动程序,它可以控制不同类型的浏览器(例如 IE、Chrome 或无头浏览器 PhantomJS)。不幸的是,我不得不使用 C#,因为 Dll 不支持 C++。使用 FindElement() 函数,您可以通过在 CSS 中搜索 id、类名、标记名等来检索页面上的任何元素。您可以单击一个元素,在其中输入文本或从中检索文本。后者使我可以从页面中检索 Java 对象。

Selenium webdriver 唯一的缺点是速度很慢,但总的来说它可以完成这项工作。

于 2015-03-30T07:47:30.850 回答