#! -*- coding:utf-8 -*-
'''主要測試python網路程式設計中socket模組的使用
涉及到的技術點: 套接字:面向連線的還有非面向連線套接字:tcp面向連線、udp非面向連線
1、匯入socket
2、建立socket :socket三要素 1、socket_family, 2、socket_type 3、protool 預設0
3、服務端
socket繫結網路
socket監聽
while :
等待客戶端連線 accept
while
接收客戶端資訊
關係客戶端連線
socket關閉
4、客戶端
連線伺服器
while
對話,傳送和接收
關閉客戶端套接字
'''from socket import *
from time import ctime
class
socket_ser
(object):
def__init__
(self):
self.host = ''
self.port = 21567
self.buffer = 1024
self.addr = (self.host,self.port)
defcreate
(self):
ser = socket(af_inet,sock_stream)
ser.bind(self.addr)
ser.listen(5)
while
true:
print
'waiting the client connect ...'
tcpclisocket ,cliaddr = ser.accept()
print
'connect the server from : ',cliaddr
while
true:
data = tcpclisocket.recv(self.buffer)
ifnot data:
break
print data
info = raw_input('>:\n')
ifnot info:
break
tcpclisocket.send(info)
tcpclisocket.close()
print
'from ',cliaddr,' connection is closed!'
ser.close()
if __name__ == '__main__':
ser = socket_ser()
ser.create()
客戶端:
class
socket_client
(object):
def__init__
(self):
self.host = 'localhost'
self.port = 21567
self.buffer = 1024
self.addr = (self.host,self.port)
defcreate
(self):
cli = socket(af_inet,sock_stream)
cli.connect(self.addr)
while
true:
info = raw_input('>:\n')
ifnot info:
break
cli.send(info)
data = cli.recv(self.buffer)
ifnot data:
break
print data
cli.close()
print
'the client socket is closed!'
python網路程式設計學習筆記(一)
python網路程式設計 建立乙個能接受客戶端的訊息,在訊息前加乙個時間戳後返回的tcp伺服器 usr bin env python from socket import from time import ctime host port 21567 bufsiz 1024 addr host,por...
Python網路程式設計 學習筆記
1 為了把全世界的所有不同型別的計算機都連線起來,就必須規定一套全球通用的協議,為了實現網際網路這個目標,網際網路協議簇 internet protocol suite 就是通用協議標準。internet是由inter和net兩個單詞組合起來的,原意就是連線 網路 的網路,有了internet,任何...
學習筆記 Python網路程式設計
tcp程式設計 server 1 import socket,threading,time23 defdealclient sock,addr 4print accept new connection from s s.addr 5 sock.send b hello,i am server 給cl...