python 网络编程socket

一.架构

C/S 客户端(Client)/服务端(Server)

1.硬件C/S架构

例如:打印机

2.软件C/S架构

例如:QQ、微信、优酷、暴风影音

B/S 浏览器(Browser)/服务端(Server)

很多网站是基于浏览器来进行访问的,浏览器和各个网站服务端进行的通讯方式

二.python socket模块

服务端:

 1 import socket
 2 
 3 server = socket.socket()
 4 
 5 ip_port = ('IP', 端口)
 6 
 7 server.bind(ip_port)
 8 
 9 server.listen()
10 
11 conn, addr = server.accept()
12 
13 while 1:
14 
15     from_client_msg = conn.recv(1024)
16     if from_client_msg.decode('utf-8').upper() =='Q':
17         print('通话结束')
18         break
19     else:
20         print('>>>>接受消息', from_client_msg.decode('utf-8'))
21         to_client_msg = input('回复消息:')
22 
23         conn.send(to_client_msg.encode('utf-8'))
24 
25 
26 conn.close()
27 
28 server.close()

 

客户端:

 1 import socket
 2 
 3 client = socket.socket()
 4 
 5 server_ip_port = ('IP', 端口)
 6 
 7 client.connect(server_ip_port)
 8 while 1:
 9 
10 
11     to_server_msg = input('发送消息(输入Q通话结束):')
12     if to_server_msg.upper() =='Q':
13         client.send(to_server_msg.encode('utf-8'))
14         print('通话结束')
15         break
16     else:
17         client.send(to_server_msg.encode('utf-8'))
18 
19         from_server_msg = client.recv(1024)
20 
21         print('信息是:',from_server_msg.decode('utf-8'))
22 client.close()

 

posted @ 2019-01-02 16:43  沐小熊  阅读(297)  评论(0编辑  收藏  举报