0

I want to create an application that will be able to extract data (for separate processing & formatting) from a specific website whilst I'm browsing, and possibly to automatically retrieve some specific pages in the background.

The website itself doesn't matter here, but what it pertinent is that it is behind a login (so requires session/cookie management) and it uses a lot of Javascript (JQuery), and notably a lot of Ajax for live content. One saving grace though is that it doesn't use Flash.

I only need this application to run in a Windows environment, but need to support XP as well as 7. And I don't care which browser it is, as long as it is fully functional!

So, I'm trying to find the easiest way to embed a fully functional browser into my own C++ application. IDE of choice would be Visual Studio 2008/2010, although Borland C++ would also be an option. I'm ideally aiming to use WxWidgets (if I go the VS path) to manage the rest of the GUI, and don't want to program in C#/.net, or QT.

  • I found 'wxWebConnect', which did a lot of what I needed, but it doesn't support cookies/sessions, so that wasn't usable.
  • I tried the Microsoft Web Browser Com component, but that has rendering issues with complex sites.
  • The WebKit path for WX is abandoned.
  • The Borland WebBrowser component is also dated and doesn't render complex pages correctly.
  • And many of the search results I've found here and elsewhere are either out of date, don't deal with fully functional browsers, or use languages/platforms that aren't an option for me.

I'm quite sure there must a simple solution to this as I'm sure many others have already done something similar. I just can't find it at the moment! I've looked briefly at the Firefox/Chromium paths, which is probably the right area, but as yet I haven't been able to find a simple means of integrating/using them into my own WX project.

4

1 回答 1

1

在 wxWidgets 3.0 中,您可以使用wxWebView,它是原生 HTML 渲染引擎的包装器,完全支持 CSS、JavaScript 等。默认情况下,它将使用系统 IE 引擎,但您也可以将其与 Chromium 一起使用。

于 2013-11-08T12:44:33.443 回答