python 网络连接_python网络连接之tcp通信
#encoding=utf-8
# 創(chuàng)建一個(gè) TCP 服務(wù)器程序,這個(gè)程序會(huì)把客戶(hù)發(fā)送過(guò)來(lái)的字
# 符串加上一個(gè)時(shí)間戳(格式:'[時(shí)間]數(shù)據(jù)')返回給客戶(hù)。
from socket import *
from time import ctime
host = ''
port = 21567
bufsiz = 1024
addr = (host,port)
# ss = socket() # 創(chuàng)建服務(wù)器套接字
# ss.bind() # 把地址綁定到套接字上
# ss.listen() # 監(jiān)聽(tīng)連接
# inf_loop: # 服務(wù)器無(wú)限循環(huán)
# cs = ss.accept() # 接受客戶(hù)的連接
# comm_loop: # 通訊循環(huán)
# cs.recv()/cs.send() # 對(duì)話(接收與發(fā)送)
# cs.close() # 關(guān)閉客戶(hù)套接字
# ss.close() # 關(guān)閉服務(wù)器套接字(可選)
#創(chuàng)建tcp套接字,綁定,監(jiān)聽(tīng)
tcpServerSock = socket(AF_INET,SOCK_STREAM)#創(chuàng)建TCP Socket
#AF_INET 服務(wù)器之間網(wǎng)絡(luò)通信
#socket.SOCK_STREAM 流式socket , for TCP
tcpServerSock.bind(addr)#將套接字綁定到地址,
#在AF_INET下,以元組(host,port)的形式表示地址.
tcpServerSock.listen(5)#操作系統(tǒng)可以掛起的最大連接數(shù)量,至少為1,大部分為5
while True:
print 'waiting for connection'
tcpClientSock, addr2 = tcpServerSock.accept() #接受客戶(hù)的連接
#接受TCP連接并返回(conn,address),其中conn是新的套接字對(duì)象,
#可以用來(lái)接收和發(fā)送數(shù)據(jù)。
#address是連接客戶(hù)端的地址。
print 'connected from :',addr2
while True:
data = tcpClientSock.recv(bufsiz) #接收客戶(hù)端發(fā)來(lái)的數(shù)據(jù)
if not data:
break
tcpClientSock.send('[%s] %s' % (ctime(),data)) #返回給客戶(hù)端數(shù)據(jù)
tcpClientSock.close()
tcpServerSock.close()
-------------------------------------------------------------------------
#encoding=utf-8
#創(chuàng)建tcp客戶(hù)端
# cs = socket() # 創(chuàng)建客戶(hù)套接字
# cs.connect(address) # 嘗試連接address處的服務(wù)器
# comm_loop: # 通訊循環(huán)
# cs.send()/cs.recv() # 對(duì)話(發(fā)送/接收)
# cs.close() # 關(guān)閉客戶(hù)套接字
from socket import *
host = 'localhost'
port = 21567
bufsize = 1024
addr = (host,port)
tcpClientSock = socket(AF_INET,SOCK_STREAM)
tcpClientSock.connect(addr)#s.connect(address)
#連接到address處的套接字
while True:
data = raw_input('>')
if not data:
break
tcpClientSock.send(data) #像服務(wù)端發(fā)送數(shù)據(jù)
data = tcpClientSock.recv(bufsize) #接收服務(wù)端返回的數(shù)據(jù)
if not data:
break
print data
tcpClientSock.close()
總結(jié)
以上是生活随笔為你收集整理的python 网络连接_python网络连接之tcp通信的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: matlab 工业相机 曝光时间_机器视
- 下一篇: 测试如何学python_如何从0开始学P