Tanto o Perl quanto o Python (e provavelmente o Ruby também) possuem kits simples que você pode usar para construir rapidamente proxies HTTP simples.
Em Perl, use HTTP :: Proxy . Aqui está o exemplo de 3 linhas da documentação. Adicione filtros para filtrar, registrar ou reescrever solicitações ou respostas; veja a documentação para exemplos.
use HTTP::Proxy;
my $proxy = HTTP::Proxy->new( port => 3128 );
$proxy->start;
Em Python, use SimpleHTTPServer . Aqui está um exemplo de código ligeiramente adaptado do effbot . Adapte o método do_GET
(ou outros) para filtrar, registrar ou reescrever solicitações ou respostas.
import SocketServer
import SimpleHTTPServer
import urllib
class Proxy(SimpleHTTPServer.SimpleHTTPRequestHandler):
def do_GET(self):
self.copyfile(urllib.urlopen(self.path), self.wfile)
httpd = SocketServer.ForkingTCPServer(('', 3128), Proxy)
httpd.serve_forever()