aboutsummaryrefslogtreecommitdiffstats
====================|=============|========================
====================|ServerExecute|========================
====================|=============|========================
             ~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~
             ~~~~~~~|  by zx2c4   |~~~~~~~~
	     ~~~~~~~|~~~~~~~~~~~~~|~~~~~~~~
	            \             /
		     \           /
		      \         /
		       \       /
		        \     /
			 \   /
			  \ /
			   ^
			web 2.0

ServerExecute is a simple program written in Qt. It makes
use of QtWebKit. It fetches a webpage, executes all the
JavaScript, and waits for all AJAX requests to be
completed. It then returns compliant HTML as if the site
did not rely on AJAX in the first place. This is designed
as a simple alternative to using more cumbersome projects
like HtmlUnit that rely on Java.

---- Requirements ----
* Qt, from http://qt.nokia.com
* Xvfb, if running an unpatched Qt on a headless server

---- Compilation ----
$ qmake
$ make
$ ./ServerExecute http://zx2c4.com
...

---- Notes on Headless ----
QtWebKit requires an X server. You can patch this using
various patches available on the Internet, or you can use
a simple in-memory X server buffer called Xvfb. See the
included example script on how to do this. It is trivial.