用 Python 创建一个代理网络服务器


代理服务器位于客户端和实际服务器之间。它接收来自客户端的请求,将其发送到实际服务器,并在收到实际服务器的响应后将响应发送回客户端。使用代理的原因有很多,例如隐藏服务器的 IP 地址、改善性能或提高安全性等。在本文中,我们将看到如何使用 python 创建一个简单的代理服务器。

此目标可以使用三个模块 SimpleWebSocketServer、SimpleHTTPSServer 和 urllib 来实现。下面我们看看如何在模块中使用可用方法创建 python 类,并将该类的实例传递给 SimpleWebSocketServer。然后,我们使用类提供的永远服务的 server 方法启动并运行服务器。

示例

import SimpleWebSocketServer
import SimpleHTTPSServer
import urllib
PORT = 9012
class JustAProxy(SimpleHTTPSServer.SimpleWebSocketServer):
   def do_GET(self):
      url=self.path[1:]
      self.send_response(200)
      self.end_headers()
      self.copyfile(urllib.urlopen(url), self.wfile)
httpd = SimpleWebSocketServer.SimpleWebSocketServer('localhost',PORT,JustAProxy)
print ("Proxy Srever at" , str(PORT))
httpd.serveforever()

输出

运行以上代码,我们得到以下结果 -

Proxy Srever at 9012

更新日期:2021 年 1 月 25 日

2K+ 阅读次数

开启您的 职业生涯

完成课程认证

开始
广告