新聞中心
這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
python使用socket創(chuàng)建tcp服務(wù)器和客戶端-創(chuàng)新互聯(lián)
python使用socket創(chuàng)建tcp服務(wù)器和客戶端。
服務(wù)器端為一個(gè)時(shí)間戳服務(wù)器,在接收到客戶端發(fā)來的數(shù)據(jù)后,自動(dòng)回復(fù)。
客戶端,等待用戶輸入,回車后向服務(wù)器發(fā)送用戶輸入的內(nèi)容。
分別在python2.7和python3.6下測(cè)試。在啟動(dòng)時(shí)需要先啟動(dòng)服務(wù)器端,在啟動(dòng)客戶端。
python2.7下
服務(wù)器端代碼為
#coding:utf-8 from socket import * from time import ctime print("=====================時(shí)間戳TCP服務(wù)器====================="); HOST = '' #主機(jī)號(hào)為空白表示可以使用任何可用的地址。 PORT = 21567 #端口號(hào) BUFSIZ = 1024 #接收數(shù)據(jù)緩沖大小 ADDR = (HOST, PORT) tcpSerSock = socket(AF_INET, SOCK_STREAM) #創(chuàng)建TCP服務(wù)器套接字 tcpSerSock.bind(ADDR) #套接字與地址綁定 tcpSerSock.listen(5) #監(jiān)聽連接,同時(shí)連接請(qǐng)求的大數(shù)目 while True: print('等待客戶端的連接...') tcpCliSock, addr = tcpSerSock.accept() #接收客戶端連接請(qǐng)求 print('取得連接:', addr) while True: data = tcpCliSock.recv(BUFSIZ) #連續(xù)接收指定字節(jié)的數(shù)據(jù),接收到的是字節(jié)數(shù)組 if not data: #如果數(shù)據(jù)空白,則表示客戶端退出,所以退出接收 break tcpCliSock.send('[%s] %s' % (ctime(), data)) #向客戶端發(fā)送時(shí)間戳數(shù)據(jù) tcpCliSock.close() #關(guān)閉與客戶端的連接 tcpSerSock.close() #關(guān)閉服務(wù)器socket
網(wǎng)站名稱:python使用socket創(chuàng)建tcp服務(wù)器和客戶端-創(chuàng)新互聯(lián)
分享網(wǎng)址:http://www.dlmjj.cn/article/ccgcpi.html