“最简单的”;白昼;Python中的服务客户端?
用Python编写日间客户端最简单的方法是什么“最简单的”;白昼;Python中的服务客户端?,python,networking,tcp,Python,Networking,Tcp,用Python编写日间客户端最简单的方法是什么 如果有更多大小未知但仍为纯文本的数据-在服务器关闭连接之前我如何读取?使用Twisted-获取概念需要一些时间,但它会摇晃 从教程开始-前两个应该足够了。使用Twisted-这将需要一些时间来理解这个概念,但它很震撼 从教程开始-前两个应该足够了。这很有效: #!/usr/bin/python import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) host = "ti
如果有更多大小未知但仍为纯文本的数据-在服务器关闭连接之前我如何读取?使用Twisted-获取概念需要一些时间,但它会摇晃
从教程开始-前两个应该足够了。使用Twisted-这将需要一些时间来理解这个概念,但它很震撼 从教程开始-前两个应该足够了。这很有效:
#!/usr/bin/python
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = "time.nist.gov"
port = 13
s.connect((host,port))
while True:
data = s.recv(10000)
if data:
print data
else:
break
s.close()
这项工作:
#!/usr/bin/python
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = "time.nist.gov"
port = 13
s.connect((host,port))
while True:
data = s.recv(10000)
if data:
print data
else:
break
s.close()
解决方案:
- 干净地完成资源
- 如果服务行为不当,可能会吞噬您的记忆;尽管他说: 白天应该只有一行
- 干净地完成资源
- 如果服务行为不当,可能会吞噬您的记忆;尽管他说: 白天应该只有一行
作业请在作业上贴上[作业]标签。不,不是作业。只需要一个小的快速TCP单线阅读器。家庭作业?请在作业上贴上[作业]标签。不,不是作业。只需要一个小的快速TCP单线阅读器。谢谢,但你不认为会有一点开销吗?如果你打算用功能填充你的客户端,从长远来看会有回报。谢谢,但你不认为会有一点开销吗?如果你打算用功能填充你的客户端,从长远来看会有回报的。
#!/usr/bin/env python
import sys
from twisted.internet import protocol, reactor
class EchoClientFactory(protocol.ClientFactory):
protocol = lambda _: protocol.ConsumerToProtocolAdapter(sys.stdout)
def clientConnectionLost(self, connector, reason):
reactor.stop()
def clientConnectionFailed(self, connector, reason):
print reason.value
reactor.stop()
host, port = "time.nist.gov", 13
reactor.connectTCP(host, port, EchoClientFactory(), timeout=2)
reactor.run()