Python全栈开发学习笔记【Day18】--socket编程
网络编程
角色分为服务端和客户端
1,创建进程,等待远程连接
1 import socket 2 sk = socket.socket() #创建对象 3 sk.bind(('127.0.0.1',9999,)) #绑定端口,输入元祖 4 sk.listen(5) #启动监听,支持5个等待的远程连接 5 6 while True: 7 conn,address=sk.accept() #接收客户端的请求,等待客户端连接,阻塞后面的代码 8 print(conn,address) 9 conn.sendall(bytes('欢迎致电Jeff',encoding='utf-8')) # 发送消息,字节码,需指定编码 10 while True: 11 ret_bytes=conn.recv(1024) #最大接收1024字节 12 ret_str=str(ret_bytes,encoding='utf-8') 13 print(ret_str) 14 if ret_str=='q': 15 # print(ret_str) 16 break 17 conn.sendall(bytes(ret_str+"好",encoding='utf-8'))
1 import socket 2 obj = socket.socket() #创建socket对象 3 obj.connect(('127.0.0.1',9999,)) #创建连接 4 5 ret_bytes=obj.recv(1024) #阻塞 ,等待服务端发送消息 6 ret_str=str(ret_bytes,encoding='utf-8') #接受字节码 7 print(ret_str) 8 while True: 9 inp = input('输入要发送的内容:') 10 # obj.sendall(bytes(inp,encoding='utf-8')) 11 # ret = str(obj.recv(1024), encoding='utf-8') 12 # print(ret) 13 if inp=='q': 14 obj.sendall(bytes(inp, encoding='utf-8')) 15 break 16 else: 17 obj.sendall(bytes(inp,encoding='utf-8')) 18 ret=str(obj.recv(1024),encoding='utf-8') 19 print(ret) 20 obj.close()
Socket
聊天机器人
FTP上传
粘包
posted on 2016-07-20 21:04 Jeoffreyyang 阅读(66) 评论(0) 收藏 举报
浙公网安备 33010602011771号