話很少說,直接進入正題python
一:客戶端一共分爲5大塊:windows
1.建立客戶端套接字服務器
2.和服務端套接字創建鏈接socket
3.發送數據tcp
4.接收發送編碼
5.關閉客戶端套接字spa
二:socket類的介紹code
導入 socket 模塊
import socket對象
建立客戶端 socket 對象
socket.socket(AddressFamily, Type)blog
send(data) 表示發送數據,data是二進制數據
recv(buffersize) 表示接收數據, buffersize是每次接收數據的長度
三:程序開發
import socket
def main():
# 建立tcp客戶端套接字
tcp_client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 和服務端應用程序創建鏈接
tcp_client_socket.connect(("192.168.28.1", 6666))
# 準備發送的數據
send_data = "你好,請問是服務器嗎!".encode("gbk")
# 發送數據
tcp_client_socket.send(send_data)
# 接收數據, 接收的數據最大字節數是1024
recv_data = tcp_client_socket.recv(1024)
# 返回的直接是服務端程序發送的二進制數據
print(recv_data)
# 對數據進行解碼
recv_content = recv_data.decode("gbk")
print("接收服務端的數據爲:", recv_content)
# 關閉套接字
tcp_client_socket.close()
if __name__ == '__main__':
main()
*****************************************
若是看客們不太理解的話,我給你們舉個例子:
建立套接字 至關於買手機
和服務端創建鏈接 至關於你把電話打給誰
發送數據 至關於你打通電話想跟對方說的話
接收數據 至關於你收到了對方說的話
關閉客戶端 至關於電話打完了,掛斷電話
說到這是否是好理解些呢?
*****注意點*****
windows的編碼格式是gbk
mac os的編碼格式是utf-8
參數1: ‘AF_INET’, 表示IPv4地址類型
參數2: ‘SOCK_STREAM’, 表示TCP傳輸協議類型
********************************************************************
第一次發博客,博客園還不太會用,若是你們喜歡的話,之後會不定時更新博客,
但願大佬們嘴下留情,小弟就是一小白,有什麼改進的請留言;
謝謝了!