成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

python實現(xiàn)客戶端和服務(wù)器端傳輸數(shù)據(jù)

shery / 925人閱讀

摘要:建立兩個文件,一個是,存放客戶端程序,一個是,存放服務(wù)器端程序,首先運行服務(wù)器端程序,待連接成功后再運行客戶端程序,輸入要傳輸?shù)臄?shù)據(jù),在服務(wù)器終端看到傳輸過來的數(shù)據(jù)即為傳輸成功。

"""
Fuction:python實現(xiàn)客戶端和服務(wù)器端傳輸數(shù)據(jù)
Date:2018.9.4
Author:SnowKing
"""


客戶端
def sock_client_data():
    while True:
        try:
            s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            s.connect(("192.168.20.1", 6666))  #服務(wù)器和客戶端在不同的系統(tǒng)或不同的主機下時使用的ip和端口,首先要查看服務(wù)器所在的系統(tǒng)網(wǎng)卡的ip
            # s.connect(("127.0.0.1", 6666))  #服務(wù)器和客戶端都在一個系統(tǒng)下時使用的ip和端口
        except socket.error as msg:
            print(msg)
            print(sys.exit(1))
        data = input("input data:")   #輸入要傳輸?shù)臄?shù)據(jù)
        s.send(data.encode())  #將要傳輸?shù)臄?shù)據(jù)編碼發(fā)送,如果是字符數(shù)據(jù)就必須要編碼發(fā)送
        s.close()
if __name__ == "__main__":
    sock_client_data()

服務(wù)器端
def socket_service_data():
    try:
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
        s.bind(("127.0.0.1", 6666))  # 在同一臺主機的ip下使用測試ip進行通信
        # s.bind(("192.168.20.1", 6666))  #在不同主機或者同一主機的不同系統(tǒng)下使用實際ip
        s.listen(10)
    except socket.error as msg:
        print(msg)
        sys.exit(1)

    print("Wait for Connection..................")

    while True:
        sock, addr = s.accept()
        buf = sock.recv(1024)  #接收數(shù)據(jù)
        buf = buf.decode()  #解碼
        print("The data from " + str(addr[0]) + " is " + str(buf))
        print("Successfully")
        # return buf
        # sock.close()
if __name__ == "__main__":
    socket_service_data()

運行結(jié)果:

客戶端:

服務(wù)器端:


說明:
1、服務(wù)器和客戶端同在一個物理主機的同一系統(tǒng)下使用127.0.0.1,端口自己設(shè)置,只要不被占用即可,linux系統(tǒng)下查看端口是否被占用命令sudo netstat -nap | grep 6666 如果查不到端口則證明端口未被占用。建立兩個.py文件,一個是sender.py,存放客戶端程序,一個是recieve.py,存放服務(wù)器端程序,首先運行服務(wù)器端程序,待連接成功后再運行客戶端程序,輸入要傳輸?shù)臄?shù)據(jù),在服務(wù)器終端看到傳輸過來的數(shù)據(jù)即為傳輸成功。
2、服務(wù)器和客戶端在同一個物理主機的不同系統(tǒng)下,則使用服務(wù)器系統(tǒng)實際的ip地址,作者將windows作為客戶端,linux作為服務(wù)器端,在linux終端輸入 ifconfig查看ip,兩個程序使用相同的ip和端口,將兩個程序部署到各自的系統(tǒng)下,首先運行服務(wù)器端程序,再運行客戶端程序,發(fā)送數(shù)據(jù),待服務(wù)器端數(shù)據(jù)接收成功為止。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/42362.html

相關(guān)文章

  • python實現(xiàn)客戶務(wù)器傳輸圖片

    摘要:剛開始在參考網(wǎng)上的代碼時出現(xiàn)了各種錯誤,其中在調(diào)試時一直出現(xiàn)接收到的圖片數(shù)據(jù)丟失,打不開圖片,弄懂的壓縮格式之后,發(fā)現(xiàn)是因為參數(shù)設(shè)置的問題,原來是,其中是長整型,超出范圍的話接收到的圖片數(shù)據(jù)就丟失,故改為之后范圍變大,能夠正常接收圖片。 問題:以windows作為客戶端,linux作為服務(wù)器端,進行傳輸圖片 程序: Fuction:客戶端發(fā)送圖片和數(shù)據(jù) Date:2018.9.8 ...

    Reducto 評論0 收藏0

發(fā)表評論

0條評論

shery

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<