我正在测试一个客户端方案
服务器和客户端使用相同的端口9009进行连接
逆剑狂神全文阅读免费?不知何故,下面的代码给出了标题中所写的OSError:import sys
import socket
import select
凡人修仙传免费全文阅读、def chat_client():
if(len(sys.argv) < 3) :
print ('Usage : python chat_client.py hostname port')
小说下载网?sys.exit()
host = sys.argv[1]
port = int(sys.argv[2])
起点中文?s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(2)
# connect to remote host
try :
s.connect((host, port))
except :
print ('Unable to connect')
sys.exit()
print ('Connected to remote host. You can start sending messages')
sys.stdout.write('[Me] '); sys.stdout.flush()
while 1:
socket_list = [sys.stdin, s]
# Get the list sockets which are readable
ready_to_read,ready_to_write,in_error = select.select(socket_list,[],[])
# the timeout argument is omitted in above code,so chat_client blocks until a fd is ready
for sock in ready_to_read:
if sock == s:
# incoming message from remote server, s
data = sock.recv(4096) # sock.recv argument is buffsize, recommend 4096
if not data : # if not (data is not none), data is empty
print ('\nDisconnected from chat server')
sys.exit()
else : # data has something
#print data
sys.stdout.write(data) # write something to standard output buffer
sys.stdout.write('[Me] '); sys.stdout.flush() # write everything to terminal from buffer
else : # sock ! = s
# user entered a message
msg = sys.stdin.readline() # readline pick up everything from stdin
s.send(msg)
sys.stdout.write('[Me] '); sys.stdout.flush()
if __name__ == "__main__":
sys.exit(chat_client())
有人能给我一些提示吗?:)
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态