2019-11-29-Python网络编程基础

1128-Python网络编程

  1. socket(套接字)编程:用代码来实现网络通信的两个端;套接字就是实现通信的两个程序

    1)两个端:服务器和客户端

    2)Python通过socket模块提供socket编程相关的类和方法;其中socket类对应的就是套接字对应的类

  2. 服务器端的实现:

    1)创建服务器套接字对象:server = socket(family, type)

    ​ a. family:设置IP类型;默认AF_INET对应IPV4,AF_INET6对应IPV6

    ​ b. type:设置传送类型;默认SOCK_STREAM对应TCP协议;SOCK_DGRAM对应UDP协议

    2)绑定ip和端口:server.bind(ip,port)

    ​ a. ip地址:互联网中唯一的一台计算机;赋值ip地址对应的字符串

    ​ b. port端口:计算机中不同的服务(程序);范围0-65535,其中0-1024属于著名,不能随便用;

    ​ 同一时间,同一个端口只能对应一个服务

    3)开始监听:server.listen()

    4)保证服务器一直运行:接收客户端请求

    ​ a. 建立死循环保持服务器一直运行

    ​ b. con, addr = server.accept():等待接收客户端请求,返回客户端套接字对象和客户端地址

    5)接收消息:msg = con.recv(1024),可修改一次性能接收的数据大小1024

    6)对收到的消息解码:msg.decode(encoding=‘utf-8’)

    7)发送消息:con.send()

    8)关闭:con.close()

  3. 客户端实现:

    1) 创建客户端的套接字对象:client = socket()
    2) 与服务器建立连接:client.connect((ip, port))

    3) 接收消息:msg = client.recv(1024)

    4)对收到的消息解码:msg.decode(encoding=‘utf-8’)

    5)发送消息:client.send(msg.encode())

    6)关闭:client.close()

你可能感兴趣的:(2019-11-29-Python网络编程基础)