Web Rendering Proxy: Use vintage, historical, legacy browsers on modern web
Go to file
2019-07-16 23:47:37 -07:00
old added readme to ld 2019-07-16 23:44:27 -07:00
.gitignore added gitignore 2019-07-16 23:31:54 -07:00
LICENSE
make.ps1 fixes for ps build 2019-07-16 23:30:40 -07:00
Makefile makefile fix 2019-06-17 00:19:01 -07:00
README.md readme updates 2019-07-16 23:47:37 -07:00
wrp.go added cache control cruft 2019-07-16 22:47:23 -07:00
wrp.png img update 2019-07-14 22:51:57 -07:00

WRP - Web Rendering Proxy

A HTTP proxy server that allows to use historical and obsolete web browsers on the modern web. It works by rendering the web page in to a GIF image. It sends mouse clicks via ISMAP and keystrokes from a text box form input.

Current Status

  • This is a new reimplementation in GoLang/ChromeDP. Python/Webkit being now deprecated.
  • Beta versiom, but fully supported an maintained.
  • Works as browser-in-browser. A real http proxy mode is being investigated. Check issue #35 for updates.
  • As of 4.1 supports clicking on non-link elements (eg. cookie warnings, dropdown menus, etc.) and sending keystrokes. Yes, you can login and use Gmail or play web based games from any old browser.

Usage

  1. Download a WRP binary and run it on a machine that will become your WRP server.
  2. Point your legacy browser to http://address:port of WRP server. Do not set or use it as a "Proxy Server" (yet).
  3. Type a search string or a http/https URL and click GO.
  4. Adjust your screen width/height/scale/#colors to fit in your old browser.
  5. Scroll web page by clicking on the in-image scroll bar.
  6. Send keystrokes by filling in K input box and pressing Go. You also have buttons for backspace, enter and arrow keys.

Internet Explorer 1.5 doing Gmail

Flags

-l  listen address:port, default :8080
-h  headed mode, display browser window
-d  chromedp debug logging

History

  • In 2014, version 1.0 started as a cgi-bin script, adaptation of webkit2png.py and pcidade.py, blog post.
  • Later in 2014, version 2.0 became a stand alone http-proxy server, also support for both Linux/MacOS, another post.
  • In 2016 the whole internet migrated to HTTPS/SSL/TLS and WRP largely stopped working. Python code became unmaintainable and mostly unportable (especially to Windows, even WSL).
  • In 2019 WRP 3.0 has been rewritten in Golang/Chromedp as browser-in-browser instead of http proxy.
  • Later in 2019, WRP 4.0 has been completely refactored to use mouse clicks instead using a href nodes. Also in 4.1 added sending keystrokes in to input boxes. You can now login to Gmail.

Credits

License: Apache 2.0
Copyright (c) 2013-2018 Antoni Sawicki
Copyright (c) 2019 Google LLC