python socket编程:时间戳服务端与客户端

来源:互联网 发布:以太网是什么网络 编辑:程序博客网 时间:2024/06/03 04:26

今天来写一个TCP服务器程序以及TCP客户端程序,这个服务器程序会将客户发送来的字符串加上一个时间戳并且返回


服务器端:

from socket import *from time import ctimeHOST=''PORT=21567BUFSIZ=2048ADDR=(HOST,PORT)tcpSerSock=socket(AF_INET,SOCK_STREAM)tcpSerSock.bind(ADDR)tcpSerSock.listen(5)while True:print('wait for connection...')tcpCliSock,addr=tcpSerSock.accept()print('...connected from:',addr)while True:data=tcpCliSock.recv(BUFSIZ)if not data:breaktcpCliSock.send('[%s] %s' %(ctime(),data))tcpCliSock.close()tcpSerSock.close()
空的HOST变量可以保证我们的bind函数绑定在任何地址上,PORT则是一个并未使用过的端口号,listen函数的参数表示服务器最多能接受的连接数,一旦超过这个数字,连接就会被拒绝

客户端:

from socket import *HOST='localname'PORT=21567BUFSIZ=1024ADDR=(HOST,PORT)tcpCliSock=socket(AF_INET,SOCK_STREAM)tcpCliSock.connect(ADDR)while True:data=raw_input('>')if not data:break;tcpCliSock.send(data)data=tcpCliSock.recv(BUFSIZ)if not data:breakprint(data)tcpCliSock.close()

客户端的HOST则是本机的主机名,因为这个服务器和客户端都在本机运行,所以将HOST变量写成自己的主机名即可,为了成功通信,端口号必须相同。

怎么运行呢?


我们要先运行服务器再去运行客户端(不然就没意义了.....)

就这样~

原创粉丝点击