我有代理列表。
我想编写服务器(基于Twisted),可以将用户连接到我的列表中的随机代理。例如,我有这些代理列表:
187.17.19.156:48111
201.173.81.110:43542
183.245.147.14:80
183.245.147.138:80
93.174.55.82:8080
我的服务器IP是55.55.55.55:1234 当用户使用我的服务器作为代理而不是我的服务器时,会将任何流量重定向到列表中的一个代理。
现在我最终得到了这样的代码。但是无法得到回应并且无法切换代理动态。
from twisted.internet.protocol import Protocol, Factory
from twisted.internet.endpoints import TCP4ClientEndpoint
from twisted.internet import reactor
class ServerProtocol(Protocol):
def dataReceived(self,data):
print("REquest" + str(data))
def clientProtocol():
return ClientProtocol(data)
endpoint = TCP4ClientEndpoint(reactor, "127.0.0.1", 80)
endpoint.connect(Factory.forProtocol(clientProtocol))
class ClientProtocol(Protocol):
def __init__(self, dataToSend):
self.dataToSend = dataToSend
def connectionMade(self):
self.transport.write(self.dataToSend)
def dataReceived(self,data):
print("Reply" + str(data))
reactor.listenTCP(3333,
Factory.forProtocol(ServerProtocol))
reactor.run()
甚至可以实施吗?