用python實現TCP協議傳輸功能

苦學it`發表於2020-09-30

TCP傳輸的關鍵是得有socket(套接字),所以程式碼裡面要用到socket的模組
實現原理所需要的環境,一臺windows電腦,一個linux虛擬機器,linux虛擬機器下寫好相關python程式碼,windows下安裝網路除錯助手
在這裡插入圖片描述
此時選自己的windows電腦為服務端,linux虛擬機器為客戶端
py程式碼如下:

import socket


if __name__ == '__main__':
	# 首先建立好客戶端的套接字socket,這個是socket模組下的一個類,其中第一個引數是ipv4協議的意思,第二個引數是選擇了TCP協議
    tcp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    # 此段程式碼代表這個客戶端與服務端進行連線,其中8080是服務端開啟的埠(我所用的服務端為windows電腦)
    tcp_client_socket.connect(("192.168.99.1", 8080))
    # 下面寫好準備傳送的資料,因為TCP協議是以位元組流的形式傳送,所以要用encode方法去編譯程式碼
    send_data = "hello python".encode("utf-8")
    # 傳送資料
    tcp_client_socket.send(send_data)
    # 養成良好習慣,發完資料後關閉套接字
    tcp_client_socket.close()

執行完程式碼後,我們可以在windows電腦下的網路除錯助手下看見:
在這裡插入圖片描述
說明我們傳送成功,服務端已經收到了客戶端發來的請求

相關文章