如何在Python中编写代理服务器?

时间:2009-06-13 01:44:47

标签: python proxy http-headers

我想编写一个程序来更改我的Web浏览器发送的请求中的HTTP标头。我相信它可以通过代理服务器完成。所以,我想写一个代理服务器。

我学习编程。我怎么能用Python做到这一点?

6 个答案:

答案 0 :(得分:14)

以下关于如何在没有框架开销的情况下执行此操作的良好示例。

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

答案 1 :(得分:12)

查看Twisted framework,尤其是Twisted Web。它在MIT下都是免费提供的,所以你可以建立和/或修改它。

另见Python Twisted Examples

答案 2 :(得分:7)

尽管@Matthew推荐,Twisted很棒,更容易学习,理解和修改可能是this tiny example - 远离Twisted可以提供的“生产质量”和可扩展性,但是,你可以从它开始,以更好地了解问题。

对于用Python编写的各种 wide 开源HTTP代理,我建议this list - 引用具有代码,用于构建在顶部的所有品味of threading,Twisted,asyncore和其他技术呢!

答案 3 :(得分:5)

查看Tiny HTTP Proxy(1),当然还有相关文档(2)。它基本上运行服务器并处理请求。

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

答案 4 :(得分:3)

WSGI可能会更容易理解。所以我会将paste.proxy作为构建内容或作为引用抛出。

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

答案 5 :(得分:2)

http://twistedmatrix.com/

适合任何网络需求的优秀图书馆。