1、tcp服務端的建立
import socket
# 建立tcp套接字
sockfd = socket.socket(socket.af_inet, socket.sock_stream)
# 繫結位址
sockfd.bind(
('0.0.0.0'
,6663))
# 設定監聽
sockfd.listen(2)
# 等待客戶端連線
while
true
:print
('waiting for connect.....'
)try
: connfd, addr = sockfd.accept(
)print
('connect from '
.format
(addr)
)except keyboardinterrupt as e:
break
# 收訊息
while
true
: data = connfd.recv(5)
ifnot data:
break
print
("接受到來自的"
.format
(addr, data.decode())
)# 發資訊
num = connfd.send(b'thanks'
)print
('send bytes'
.format
(num)
)# 關閉連線
connfd.close(
)sockfd.close(
)
2、tcp客戶端的建立
import socket
sockfd = socket.socket(socket.af_inet, socket.sock_stream)
# 連線伺服器
sockfd.connect(
('127.0.0.1'
,8888))
print
('連線到服務端...'
)# 收發資訊
while
true
: msg =
input
('>>'
)if msg =='':
break
num = sockfd.send(msg.encode())
data = sockfd.recv(
1024
)print
('from server:'
.format
(data.decode())
)sockfd.close(
)
3、tcp的應用—檔案上傳
"""
檔案上傳服務端
"""import socket
sockdf = socket.socket(
)sockdf.bind(
('0.0.0.0'
,8888))
sockdf.listen(5)
print
('waiting for connect.....'
)connfd, addr = sockdf.accept(
)print
('connect from '
.format
(addr)
)filename = connfd.recv(
1024
).decode(
)f =
open
('/home/xiaohuo/pycharmprojects/project/network_programming/'
+filename,
'wb'
)while
true
: data = connfd.recv(
1024
)if data == b'ok'
:break
f.write(data)
f.close(
)connfd.close(
)sockdf.close(
)"""
檔案上傳客戶端
"""import socket, time
sockdf = socket.socket(
)sockdf.connect(
('127.0.0.1'
,8888))
filename =
input
('file_dir:'
)f =
open
(filename,
'rb'
)sockdf.send(
(filename.split(
'/')[-
1]).encode())
while
true
: data = f.read(
1024)if
not data:
time.sleep(
0.1)
sockdf.send(
'ok'
.encode())
break
sockdf.send(data)
f.close(
)sockdf.close(
)
Python TCP程式設計
tcp 對於tcp,我想大部分同學不會陌生。tcp是乙個網路層協議,通過tcp可以建立客戶端到伺服器的連線,並相互傳遞資料。那麼在python中如何使用tcp來做一些操作呢?socket socket在網路程式設計中,是乙個抽象概念。我們用socket來表示開啟了乙個從客戶端到伺服器或者從伺服器到客...
Python tcp程式設計
1 客戶端 coding utf 8 udp穩定性不好,tcp對包有檢查建立通道 建立連線 上傳流量以部分是上傳的應答 這之中還包括超時重傳,錯誤校驗,流量控制和阻塞管理。檔案分塊傳輸 import socket def main 1.建立tcp的套接字 tcp socket socket.sock...
python TCP程式設計再試牛刀
該示例演示的是c s服務模型,server端接收來自客戶端的請求,然後只是很簡單地給客戶端返回 hello 來自客戶端的原文。核心在於兩端socket的建立和連線以及資料的傳送和接收。server端 server.py coding utf 8 created on 2016年8月3日 author...