这里记录一下python关于网络的一些基础知识。不知为何,恰如其分的话总是姗姗来迟,错过最恰当的时机。
python中的网络编程
一、socket模板创建一个 TCP 服务器
import socket s = socket.socket() host = socket.gethostname() port = 12345 s.bind((host, port)) s.listen(5) while True: c, addr = s.accept() print('addr: ', addr) c.send('my name is huhx'.encode('utf-8')) c.close()
二、socket模板创建 TCP 客户端
import socket s = socket.socket() host = socket.gethostname() port = 12345 s.connect((host, port)) print(s.recv(1024)) s.close()
三、socket模板创建UDP服务端
from socket import * s = socket(AF_INET, SOCK_DGRAM) # 绑定端口: s.bind(('127.0.0.1', 9999)) print('Bind UDP on 9999...') while True: # 接收数据: data, addr = s.recvfrom(1024) print('Received from %s:%s.' % addr) s.sendto(b'Hello, %s!' % data, addr)
四、socket模板创建UDP客户端
from socket import * s = socket(AF_INET, SOCK_DGRAM) for data in [b'Michael', b'Tracy', b'Sarah']: # 发送数据: s.sendto(data, ('127.0.0.1', 9999)) # 接收数据: print(s.recv(1024).decode('utf-8')) s.close()