I am developing an application that needs to embed mozilla's browsing engine and control this engine programatically to navigate through webpages and scrape content. The alterantive is to use libcurl, but it seems too primitive for the rich and dynamic content found on the web (especially that the final content on a webpage is often determined after applying javascript stuff and css).
So far, I ve build the XULRunner SDK from source on Ubuntu (10.10 server 64bit). I am able to register the XRE (or GRE or whatever u call it these days) so that example apps like TestGtkEmbed launch properly. However, the documentation on embedding is a bit fuzzy and all over the place. I am not even completely sure with the terminology as it keeps changing and is mixed up in the docs. Question0: How is embedding Gecko different from embedding XULRunner? Which of the two have I actually done above? Question1a: My understanding is that I can build upon GtkEmbedMoz (provides a gtk widget for the browser content pane - I think) and TestGtkEmbed (provides the actual window in which GtkEmbedMoz is displayed - I think) instead of working directly with the embedding API (too much work). Is My understanding correct? If not, please correct it. Question1b: TestGtkEmbed was compiled as part of XULRunner SDK compilation. If I am to build upon it, I would obviously have to compile it as part of my app. However, a lot of stuff goes in TestGtkEmbed, and I cannot find a good makefile or at least guidance as to what flags, libs, and include paths to use. Any advice greatly appreciated. Question2: The ultimate goal would be using the mozilla engine in headless mode - therefore I would eventually not need any of the gtk stuff for display. In this case, am I doing an overkill by going through GtkEmbedMoz? Would it be eventually simpler to use the embedding API directly. Please comment. _______________________________________________ dev-embedding mailing list [email protected] https://lists.mozilla.org/listinfo/dev-embedding
