本篇內(nèi)容主要講解“Python中怎么實(shí)現(xiàn)服務(wù)端與客戶端連接”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Python中怎么實(shí)現(xiàn)服務(wù)端與客戶端連接”吧!
“只有客戶發(fā)展了,才有我們的生存與發(fā)展!”這是創(chuàng)新互聯(lián)的服務(wù)宗旨!把網(wǎng)站當(dāng)作互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品思維更注重全局思維、需求分析和迭代思維,在網(wǎng)站建設(shè)中就是為了建設(shè)一個(gè)不僅審美在線,而且實(shí)用性極高的網(wǎng)站。創(chuàng)新互聯(lián)對(duì)成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站開發(fā)、網(wǎng)頁設(shè)計(jì)、網(wǎng)站優(yōu)化、網(wǎng)絡(luò)推廣、探索永無止境。
我們使用 socket 模塊的 socket 函數(shù)來創(chuàng)建一個(gè) socket 對(duì)象。socket 對(duì)象可以通過調(diào)用其他函數(shù)來設(shè)置一個(gè) socket 服務(wù)。
現(xiàn)在我們可以通過調(diào)用 bind(hostname, port) 函數(shù)來指定服務(wù)的 port(端口)。
接著,我們調(diào)用 socket 對(duì)象的 accept 方法。該方法等待客戶端的連接,并返回 connection 對(duì)象,表示已連接到客戶端。
完整代碼如下:
#!/usr/bin/python3
# 文件名:server.py
# 導(dǎo)入 socket、sys 模塊
import socket
import sys
# 創(chuàng)建 socket 對(duì)象
serversocket = socket.socket(
socket.AF_INET, socket.SOCK_STREAM)
# 獲取本地主機(jī)名
host = socket.gethostname()
port = 9999
# 綁定端口號(hào)
serversocket.bind((host, port))
# 設(shè)置最大連接數(shù),超過后排隊(duì)
serversocket.listen(5)
while True:
# 建立客戶端連接
clientsocket,addr = serversocket.accept()
print("連接地址: %s" % str(addr))
msg='歡迎訪問菜鳥教程!'+ "\r"
clientsocket.send(msg.encode('utf-8'))
clientsocket.close()
接下來我們寫一個(gè)簡(jiǎn)單的客戶端實(shí)例連接到以上創(chuàng)建的服務(wù)。端口號(hào)為 9999。
socket.connect(hostname, port ) 方法打開一個(gè) TCP 連接到主機(jī)為 hostname 端口為 port 的服務(wù)商。連接后我們就可以從服務(wù)端獲取數(shù)據(jù),記住,操作完成后需要關(guān)閉連接。
完整代碼如下:
#!/usr/bin/python3
# 文件名:client.py
# 導(dǎo)入 socket、sys 模塊
import socket
import sys
# 創(chuàng)建 socket 對(duì)象
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 獲取本地主機(jī)名
host = socket.gethostname()
# 設(shè)置端口號(hào)
port = 9999
# 連接服務(wù),指定主機(jī)和端口
s.connect((host, port))
# 接收小于 1024 字節(jié)的數(shù)據(jù)
msg = s.recv(1024)
s.close()
print (msg.decode('utf-8'))
現(xiàn)在我們打開兩個(gè)終端,第一個(gè)終端執(zhí)行 server.py 文件:
$ python3 server.py
第二個(gè)終端執(zhí)行 client.py 文件:
$ python3 client.py 歡迎訪問菜鳥教程!
這時(shí)我們?cè)俅蜷_第一個(gè)終端,就會(huì)看到有以下信息輸出:
連接地址: ('192.168.0.118', 33397)
到此,相信大家對(duì)“Python中怎么實(shí)現(xiàn)服務(wù)端與客戶端連接”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
分享名稱:Python中怎么實(shí)現(xiàn)服務(wù)端與客戶端連接
網(wǎng)站路徑:http://aaarwkj.com/article22/ijhecc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、網(wǎng)站維護(hù)、關(guān)鍵詞優(yōu)化、企業(yè)網(wǎng)站制作、動(dòng)態(tài)網(wǎng)站、虛擬主機(jī)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)