(note this is a guest post by Tenox)
Quite a while ago I’ve came across Opera rendering proxy for mobile browsers. This got me thinking. If you could render a web page on a proxy server to a simplified HTML, say 3.x. This would make a lot of web browsers happy. For some unrelated purposes I have been using webkit2png which allows to create a whole web page snapshot in a single png image. Wait… what if such image had an image map of clickable regions pointing to the original links? Maybe…
The idea was born, but was it possible to implement and would it work? Webkit2png was quite far from having all the required functionality. For various reasons Python and I will never be friends, so extending the original script was bit out of luck. Fortunately though after some additional research I have stumbled upon picidae network. To my utter surprise they actually made all or even more functionality that I wanted in their picidae.py script. All that had to be done to adapt picidae to my purpose was to save the image as a GIF image, generate a simple HTML page with imagemap, an input box and strip all the unwanted stuff. This I could survive in Python.
Webrender.py came to life. It’s a cgi-bin application that resides on a machine in the middle. It renders a gif image and spits it out to the browser together with a simple web page, containing a URL and search input boxes plus the gif and image map.
After some initial debugging and massaging out few bugs the solution worked perfectly! I could finally get the old browsers happily navigate modern websites! Check out some examples:
Yes! You can finally browse microsoft.com with IE 1.5
Or go to netscape.com in Netscape 4.x browser. This was impossible just a few hours ago!
How about some other browsers:
Update: A full HTTP Proxy version has been made.