日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python实现文件共享_改进的一行Python实现文件共享--支持并发

發布時間:2025/4/5 python 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python实现文件共享_改进的一行Python实现文件共享--支持并发 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SimpleHTTPServer是python自帶的一個簡單的靜態HTTP服務器, python2.x下只要切換到想要共享的目錄簡單地輸入下面的命令,就可以打開該HTTP服務器:

python -m SimpleHTTPServer [port]

其中,port是可選參數,用于指定使用的端口,默認使用的是8000端口。

在python3.x中,SimpleHTTPServer模塊被合并進了http.server模塊中,所以,python3.x中命令略有不同:

python3 -m http.server [port]

打開服務器之后,只需在任何局域網設備瀏覽器中輸入服務器ip:port就可以查看和下載服務器指定目錄的文件。如下圖所示:

圖1. 瀏覽器展示的文件目錄

這個文件服務器雖然簡單,但卻能充分利用局域網的帶寬,為公司、家庭和學校等場景省去了U盤拷貝文件的煩惱。

當然,正由于簡單它同樣存在著很多缺陷,很重要的一點就是其不支持并發, 即不能同時有多個主機訪問共享的目錄。為了解決這個問題,重寫這個模塊:

python2.x:

#!/usr/bin python#encoding: utf-8

importsocketimportBaseHTTPServerfrom SimpleHTTPServer importSimpleHTTPRequestHandler as SHRHfrom SocketServer importForkingTCPServer as FTSclassForkingHTTPServer(FTS):pass

def main(ServerHandlers = SHRH, ServerClass =ForkingHTTPServer):

BaseHTTPServer.test(ServerHandlers, ServerClass)if __name__ == '__main__':print("Host_address:[%s]" %socket.gethostbyname(socket.gethostname()))

main()

python3.x

#!/usr/local/bin python3#encoding: utf-8

importsocketfrom socketserver importForkingTCPServer as FTSimporthttp.serverfrom http.server importSimpleHTTPRequestHandler as SHRHclassForkHTTPServer(FTS):pass

def test(ServerHandler=SHRH, ServerClass=ForkHTTPServer):

http.server.test(ServerHandler, ServerClass)if __name__ == '__main__':

ip_address=socket.gethostbyname(socket.gethostname())print("Server address:[%s]" %ip_address)

test()

上面的代碼中ServerClass繼承自ForkingTCPServer類,這個類是socketserver模塊中ForkingMixIn和TCPServer的綜合,前者實現了使用分支的方法實現了HTTP服務器的并發功能。

將代碼保存為ForkHTTPServer.py, 然后將其移動至python的庫目錄下(我的python2.7為/usr/lib/python2.7;python3.4為/Library/Frameworks/Python.framework/Versions/3.4/lib),使用如下命令就可以啟動并發版的簡易靜態文件服務器了:)

[python2.7]

python -m ForkHTTPServer [port]

[python3.4]

python3 -m ForkHTTPServer [port]

這個命令還是太麻煩,對于Linux或Mac用戶可以更進一步,為該命令取別名:

vim ~/.bashrc

添加:

[python2.7]

alias share="python -m /usr/lib/python2.7/ForkStaticServer"

[python3.4]

alias share="python3 -m /Library/Frameworks/Python.framework/Versions/3.4/lib/ForkStaticServer"

這樣,只要在終端中輸入“share”命令就可以開去文件服務器了,很方便是吧:-D

總結

以上是生活随笔為你收集整理的python实现文件共享_改进的一行Python实现文件共享--支持并发的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 青青草久久爱 | 日韩中文字幕在线不卡 | 噜噜av| 拔萝卜91| 国产性xxx | 欧美做受xxxxxⅹ性视频 | 少妇高潮灌满白浆毛片免费看 | 999av| 日本三级一区二区三区 | 成人自拍视频在线 | 国产男女爽爽爽 | 日本中文字幕网站 | 国产男男gay体育生白袜 | 成人欧美一区二区三区黑人孕妇 | 久久福利免费视频 | 精品国产亚洲AV | 根深蒂固在线观看 | 亚洲成人7777 | 日日噜噜噜夜夜爽爽狠狠 | 国产色综合视频 | 91精品国产欧美一区二区 | av先锋在线 | 国产精品一区在线观看你懂的 | 亚洲三级欧美 | 日本在线观看一区二区 | 黑丝美女一区二区 | 欧美精品999| 夜夜狠狠擅视频 | 四色在线| 成人污| 日本一区二区高清不卡 | 被室友玩屁股(h)男男 | 日韩精品一区二区三区在线视频 | 丁香花电影免费播放电影 | 色欧洲| 国产精品无码久久久久久 | 中文字幕 欧美日韩 | 一级片免费观看视频 | 午夜福利一区二区三区 | 亚洲免费观看高清在线观看 | 91免费版黄色 | 国产原创中文av | 黄色av电影在线观看 | 国产精品1000| 中文字幕免费看 | 久久中文字幕在线观看 | 毛片黄色片| 国产福利观看 | 国产精品免费一区二区三区都可以 | 精品久久福利 | 欧美日韩一区二区三区四区 | 涩色视频| 亚洲网址在线观看 | 武林美妇肉伦娇喘呻吟 | 国产精品精品国产 | 久久精品网址 | 欧美精品1 | 丝袜制服影音先锋 | 国产精品无码久久久久成人app | 女生张开腿给男生桶 | 国产av第一区 | 国产成人无遮挡在线视频 | 放几个免费的毛片出来看 | 插插网站 | 免费欧美一级视频 | 影音先锋国产在线 | 国产成人一区二区三区影院在线 | 美女黄色免费网站 | 国产精品一区二区自拍 | 巨物撞击尤物少妇呻吟 | 欧美日韩免费高清一区色橹橹 | 日韩激情网站 | 成长快手短视频在线观看 | 雷电将军和丘丘人繁衍后代视频 | 国产成人黄色av | 91蜜桃在线 | 久久久久久黄 | 奇米影视首页 | 亚洲九九九 | 日韩高清精品免费观看 | 国产粉嫩呻吟一区二区三区 | 伦理片波多野结衣 | 久久久最新 | 国产成人无码一区二区在线观看 | 黄色小说视频网站 | 欧美特级黄色录像 | 亚洲小视频 | 国产视频一区三区 | 免费美女视频网站 | 清纯唯美亚洲色图 | 亚洲天堂自拍偷拍 | youjizz国产精品 | 精品欧美一区二区精品少妇 | 毛片毛片毛片毛片毛片毛片毛片毛片 | 天堂网在线视频 | 动漫美女被到爽 | 久久久久久久久久久99 | 悠悠av | 婷婷综合影院 |