1、架构python
此处说的架构是C/S架构,就是客户端/服务端,拿手机来讲,QQ,微信等都是客户端,而为这些客户端提供数据的就是服务端。PC端也有这种模式,就是电脑安装的QQ,微信等。由C/S还衍生出来一个B/S,就是浏览器/服务端。浏览器
这个B/S的做用就是在浏览器中,能够任意访问网站,不用再去安装不少的客户端。在一些客户端在红中,其实也有使用到网页,对于一些展现性的页面或者急于开发的页面,就会使用网页代替,因此如今有些公司,会混合使用二者。服务器
2、Socket微信
套接字,一个要想使用网络必须了解的知识。在Python中,把socket进行了处理,先看代码。模拟的客户端和服务端。网络
client.py架构
import socket #建立一个client对象 client = socket.socket() server_ip_port = ('IP地址', int型端口号) #根据IP地址和端口号去链接对方的服务器 client.connect(server_ip_port) while 1: to_client_msg = input('对服务端说:') if 'Q' == to_client_msg.upper(): break client.send(to_client_msg.encode('utf-8')) from_server_msg = client.recv(1024) print('服务端说:', from_server_msg.decode('utf-8')) client.close()
server.pysocket
import socket #使用socket获取一个server server = socket.socket() ip_port = ('IP地址', int型端口号) #把IP端口号和server绑定起来 server.bind(ip_port) #监听消息 server.listen() #等待客户端的链接吧 conn, addr = server.accept() while 1: #接收消息,对方以字节传递过来的,设置一个每次最大接收值,通常是1024 from_client_msg = conn.recv(1024) #打印时,要解码 print(addr[0] + "说:", from_client_msg.decode('utf-8')) to_client_msg = input('对' + addr[0] + "说:") if 'Q' == to_client_msg.upper(): break #给对方发送消息时,也要是字节 conn.send(to_client_msg.encode('utf-8')) #最后不使用了就关闭链接 conn.close() server.close()