Python--网络编程

1.引入socket

import socket
# 创建socket对象
# 参数1:
#socket.AF_INET  表示IPV4(默认)
#socket.AF_INET6 表示IPV6
#socket.AF_UNIX   只能用于单一的
# 参数2:
# socket.SOCK_STREAM  流式socket for TCP(默认)
# socket.SOCK_DGRAM   数据格式socket,for UDP
# socket.SOCK_RAW     原始套接字,普通的套接字无法处理ICMP,IGMP等网络报文,可以通过IP_HDRINCL套接字选项由用户构造IP头
# socket.SOCK_SEQPACKET  可靠的连续数据包服务
serversocket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# 获取本机主机名
host = socket.gethostname()

port=10011

# 绑定端口号
serversocket.bind((host,port))

# 设置最大的连接数
serversocket.listen(5)

while True:
    # 建立客户端连接
    clientsocket,addr = serversocket.accept()

    print("连接地址:%s" % str(addr))
    msg= '欢迎访问网站'
    clientsocket.send(msg.encode('utf-8'))
    clientsocket.close()

客户端

import socket
import sys
# 创建socket对象
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)

# 获取本机的主机名
host = socket.gethostname()

# 设置端口号
port = 10011

# 连接服务
s.connect((host,port))

# 接收小于1024 字节数据
msg = s.recv(1024)

s.close()

print(msg.decode('utf-8'))

结果

《Python--网络编程》 服务端启动.png
《Python--网络编程》 客户端成功连接.png

    原文作者:YI_YI_
    原文地址: https://www.jianshu.com/p/d026f88629e1
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞