欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

局域網(wǎng)內(nèi)python socket實現(xiàn)windows與linux間的消息傳送

 更新時間:2019年04月19日 10:02:19   作者:小friend  
這篇文章主要介紹了局域網(wǎng)內(nèi)python socket實現(xiàn)windows與linux間的消息傳送的相關(guān)知識,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下

有個需求,就是在windows上看見一篇介紹linux相關(guān)的文章,想在局域網(wǎng)內(nèi)的另外一臺linux電腦上嘗試一下,

于是就需要把該網(wǎng)頁鏈接發(fā)送給linux,不想一點一點敲鏈接,又苦于沒有找到其它好的方法。

想起之前學(xué)習(xí)計算機網(wǎng)絡(luò)時了解到的socket,于是再次打開課本,代碼(python3)如下:

客戶端(windows)代碼:

# 局域網(wǎng)內(nèi)的windows客戶端
from socket import *  #導(dǎo)入socket里的所有東西
serverName = '127.0.0.1' #換成局域網(wǎng)內(nèi)服務(wù)器端IP即可實現(xiàn)局域網(wǎng)內(nèi)通信
serverPort = 12001   #服務(wù)器端口,除了已知的被占用端口都可,一般建議10000-65535
clientSocket = socket(AF_INET,SOCK_DGRAM) #UDP連接
#ipv4 udp
while True:
 message = input('please input: \n')
 if (message == '0'): #輸入0時結(jié)束發(fā)送
  break
 clientSocket.sendto(message.encode(),(serverName,serverPort)) #向服務(wù)器發(fā)送消息,使用socket時,只能以字節(jié)形式傳送,故需要encode()
 reply,serverAddress = clientSocket.recvfrom(2048)    #接收服務(wù)器返回的消息和地址
 print (reply)
clientSocket.close()  #關(guān)閉連接

服務(wù)器端(linux)代碼:

# 如果是局域網(wǎng)內(nèi)的linux作為服務(wù)器端執(zhí)行該代碼,注意先關(guān)閉防火墻
from socket import *
serverPort = 12001
serverSocket = socket(AF_INET,SOCK_DGRAM)
serverSocket.bind(('',serverPort)) #注意bind方法括號內(nèi)為一個元組,引號默認(rèn)表示為127.0.0.1,即監(jiān)聽本地端口
print('ready')
while True:
 message,clientAddress = serverSocket.recvfrom(2048)  #接收客戶端發(fā)來的消息
 print(message)

    serverSocket.sendto('have received'.encode(),clientAddress)        #使用socket時,只能以字節(jié)形式傳送,故需要encode()

上述代碼參考《計算機網(wǎng)絡(luò)自頂向下方法》,代碼很簡潔,而且基本上能滿足需求。

值得強調(diào)的一點是,在實現(xiàn)上述代碼時,建議先在本機(即在windows上跑上面兩個腳本),成功了以后再把serverName從'127.0.0.1' 變?yōu)?'局域網(wǎng)內(nèi)服務(wù)器端IP'。

而且在linux端實現(xiàn)服務(wù)器端代碼時,一定要先關(guān)閉防火墻!凡是涉及到局域網(wǎng)內(nèi)linux與其它主機通信的都要考慮防火墻的問題,比如ftp之類?。ㄟ@一點對于小白來講怎樣強調(diào)都不為過,雖然我之前知道也這一點,但是這次在運行該代碼時,再次犯了這樣的錯誤,找原因也浪費了挺長時間,最后想起是防火墻的原因又懊惱不已,懷著悲傷的心情寫下了這個小結(jié))

總結(jié)

以上所述是小編給大家介紹的局域網(wǎng)內(nèi)python socket實現(xiàn)windows與linux間的消息傳送,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • Python利用Canny算法檢測硬幣邊緣

    Python利用Canny算法檢測硬幣邊緣

    這篇文章主要介紹了如何使用Canny算法檢測出紙面上硬幣的邊緣。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起動手試一試
    2022-01-01
  • 基于Python制作一款屏幕顏色提取器

    基于Python制作一款屏幕顏色提取器

    這篇文章主要為大家介紹了如何利用Python制作一款簡易的屏幕顏色提取器,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定幫助,感興趣的可以動手試一試
    2022-03-03
  • python方向鍵控制上下左右代碼

    python方向鍵控制上下左右代碼

    這篇文章主要介紹了python方向鍵控制上下左右代碼,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • anaconda python3.8安裝后降級

    anaconda python3.8安裝后降級

    想給新的環(huán)境安裝pip install tensorflow,結(jié)果報錯了。網(wǎng)上了解可以降級為3.6,本文就詳細(xì)的介紹一下,感興趣的小伙伴們可以參考一下
    2021-06-06
  • python并發(fā)爬蟲實用工具tomorrow實用解析

    python并發(fā)爬蟲實用工具tomorrow實用解析

    這篇文章主要介紹了python并發(fā)爬蟲實用工具tomorrow實用解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • 淺析python 動態(tài)庫m.so.1.0錯誤問題

    淺析python 動態(tài)庫m.so.1.0錯誤問題

    這篇文章主要介紹了python 動態(tài)庫m.so.1.0錯誤問題,文中給大家提到了python中使用動態(tài)庫的方法,通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • Python數(shù)據(jù)分析Matplotlib?柱狀圖繪制

    Python數(shù)據(jù)分析Matplotlib?柱狀圖繪制

    本文主要介紹了Python數(shù)據(jù)分析Matplotlib柱狀圖繪制,Matplotlib提供了bar()方法繪制柱狀圖,下面具體繪制介紹需要的小伙伴可以參考以一下
    2022-05-05
  • 使用python求解迷宮問題的三種實現(xiàn)方法

    使用python求解迷宮問題的三種實現(xiàn)方法

    關(guān)于迷宮問題,常見會問能不能到達(dá)某點,以及打印到達(dá)的最短路徑,下面這篇文章主要給大家介紹了關(guān)于如何使用python求解迷宮問題的三種實現(xiàn)方法,需要的朋友可以參考下
    2022-03-03
  • Python for循環(huán)搭配else常見問題解決

    Python for循環(huán)搭配else常見問題解決

    這篇文章主要介紹了Python for循環(huán)搭配else常見問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • python如何下載指定版本TensorFlow

    python如何下載指定版本TensorFlow

    這篇文章主要介紹了python如何下載指定版本TensorFlow問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03

最新評論