web-dev-qa-db-ja.com

Pythonでプロキシサーバーを作成するにはどうすればよいですか?

Webブラウザから送信されるリクエストのHTTPヘッダーを変更するプログラムを作成したいと思います。プロキシサーバーでできると思います。そこで、プロキシサーバーを作成したいと思います。

私はプログラミングを勉強しています。 Pythonでこれを行うにはどうすればよいですか?

18
Fake

フレームワークのオーバーヘッドなしでこれを行う方法に関する以下の良い例。

http://www.warriorhut.org/whatwg/websocket-proxy.py

14
SpliFF

Twistedフレームワーク 、特に Twisted Web を見てください。それはすべてMITの下で自由に利用できるので、構築したり変更したりすることができます。

Python Twisted Examples も参照してください。

12

@Matthewが推奨するように、Twistedは素晴らしいですが、学習、理解、変更が簡単な場合があります この小さな例 -Twistedが提供できる「本番品質」とスケーラビリティからはほど遠いですが、問題をよりよく理解するためにそれから始めることができます。

Pythonで記述されたワイドのさまざまなオープンソースHTTPプロキシについては、 このリスト -thatリファレンスには、スレッド、ツイスト、非同期、およびその他のテクノロジーの上に構築されたすべてのテイストのプロキシがあります!

7
Alex Martelli

Tiny HTTP Proxy(1)ともちろん関連ドキュメント(2)をご覧ください。基本的にサーバーを実行し、リクエストを処理しています。

(1) http://www.oki-osk.jp/esc/python/proxy/ (2) http://docs.python.org/library/basehttpserver.html

5
Armandas

WSGIは、頭を動かすのが少し簡単かもしれません。そこで、paste.proxyを、構築するものとして、または参照としてスローします。

http://pythonpaste.org/modules/proxy.html

3
Tom Willis

http://twistedmatrix.com/

ネットワークのニーズに対応する優れたライブラリ。

2
sqram