利用Python搭建一個(gè)局域網(wǎng)中文件共享服務(wù)器(支持上傳和下載)

1秸脱、下載功能

由于經(jīng)常需要安裝一些軟件撞反,而且下載速度特別慢搪花,考慮著方便嘹害,于是想做一個(gè)文件共享吮便,通過http的形式;所以就找了一下许师,有沒有Python相關(guān)的僚匆,Python就是相當(dāng)便捷,還真就有共享的方法逞盆。而且相當(dāng)簡單松申,需要的條件是:

  1. 已經(jīng)有Python環(huán)境,如果沒有舅逸,需要先安裝皇筛,可以直接安裝Python的環(huán)境,也可以安裝Anaconda來使用善已,后者功能比較強(qiáng)大
    anaconda參考:http://www.reibang.com/p/742dc4d8f4c5
  2. 進(jìn)入到需要共享的目錄里邊离例,例如:我想共享”C:\Users\Administrator\Desktop\python“這個(gè)路徑下的文件,那么就可以進(jìn)入到這里邊-->按住shift+鼠標(biāo)右鍵艘包,在這里邊打開命令窗口耀盗,使用如下命令即可。
    Python2.x的使用
python -m SimpleHTTPServer 8888

其中8888為端口(默認(rèn)端口也就是8000)舌厨,可以根據(jù)自己的來改動忿薇,只要不被占用就好躏哩。
Python3.x使用

 python -m http.server 8888

如圖:

啟動之后就可以在瀏覽器輸入本機(jī)地址+端口號來訪問了(ip:port),如果是本機(jī)使用扫尺,那么127.0.0.1:8888也就可以了.

但是我們肯定需要將這些分享給小伙伴的嘛炊汤,這就只需要把127.0.0.1換成本機(jī)的ip地址,這樣就可以了姑曙,例如我的是:

這樣就可以在整個(gè)局域網(wǎng)中共享文件了伤靠。如果不知道自己的ip地址:既然在搞這個(gè)就不可能不知道怎么查自己的ip地址的授瘦。但是還是寫一下提完。
windows上查ip丘侠,win+r --> 輸入cmd,進(jìn)去以后使用

ipconfig

就可以找到了
linux上查ip

ifconfig

2、上傳功能

下載那個(gè)很簡單吧打肝,一行命令就可以了挪捕;因?yàn)榭紤]到共享,肯定要能上傳啊断医,不然不如直接拷貝得了奏纪。
查了一下,有兩個(gè)模塊
1序调、Woof模塊:http://www.home.unix-ag.org/simon/woof.html
這個(gè)模塊沒看,作為記錄发绢,很少有用它的垄琐,比較多的都是用droopy模塊
2此虑、Droopy模塊(支持上傳功能)
官方文檔:http://stackp.online.fr/?p=28

官方文檔的介紹也特別少口锭,在windows上運(yùn)行的教程看不了,所以就直接在liunx上運(yùn)行的韭寸。
操作步驟是這樣的:
1荆隘、首先你需要安裝droopy模塊
網(wǎng)上教程的安裝方式:https://yq.aliyun.com/articles/540329

pip install -i http://pypi.douban.com/simple droopy  

但是這個(gè)命令我用的時(shí)候報(bào)錯,改成

pip install droopy 

就可以了晶渠。
在這個(gè)過程中還有一個(gè)問題燃观,因?yàn)楣痉?wù)器上的Python環(huán)境是python2.x,沒有pip番川,所以需要先安裝pip
參考這個(gè)網(wǎng)站:https://www.runoob.com/w3cnote/python-pip-install-usage.html
都安裝好以后脊框,如果你沒注意droopy官網(wǎng)說的那個(gè)下載,你按照droopy官網(wǎng)的方式去啟動沉御,是啟動不了的昭灵。因?yàn)檫€需要下載droopy文件。
任意下載到一個(gè)目錄硫痰,為了和官網(wǎng)一樣窜护,我也就在家目錄下創(chuàng)建了一個(gè)bin目錄,然后進(jìn)入到該目錄使用wget來下載droopy文件

# mkdir bin 
# cd bin/
# wget http://stackp.online.fr/wp-content/uploads/droopy

下載之后缓屠,就會在bin目錄下看到一個(gè)droopy文件

這個(gè)時(shí)候就可以按照官網(wǎng)上的啟動步驟來了敌完。
先建立一個(gè)文件上傳的目錄,就是你的文件傳上去滨溉,存的那個(gè)位置晦攒,例如我是傳到uploads目錄下

# mkdir uploads
# cd uploads

然后在這個(gè)目錄下使用如下命令啟動上傳文件服務(wù);

# python ~/bin/droopy -m "你可以上傳需要共享的文件了"

參數(shù)的具體說明參見droopy官網(wǎng)。
這樣脯颜,一個(gè)包含上傳和下載的http文件共享服務(wù)器也就完事兒了栋操。

3、后臺啟動

前邊這種方式啟動是可以的矾芙,但是如果一關(guān)閉蠕啄,這個(gè)服務(wù)隨之也就關(guān)閉了戈锻,所以我們需要后臺啟動,將上邊的啟動命令改成如下就行,分別啟動上傳服務(wù)和下載服務(wù)哈街,這個(gè)跟順序無關(guān)拒迅,誰先誰后都可以。

# nohup python ~/bin/droopy -m "可以上傳文件" > nohup.out 2>&1 & 
# nohup python -m SimpleHTTPServer 8888 >  nohup-download.out 2>&1 &

上邊這種情況是實(shí)現(xiàn)了后臺啟動作箍,但是呢前硫,他會把日志也就是nohup.out也記錄到共享目錄下,其實(shí)也不影響阶剑,但是我就不想看見他,所以我在家目錄下專門建立了一個(gè)uploads-download-log的目錄來存放這些東西素邪,然后命令改成下邊這樣就行了猪半。

# nohup python ~/bin/droopy -m "可以上傳文件" > ~/uploads-download-log/nohup.out 2>&1 &
# nohup python -m SimpleHTTPServer 8888 >  ~/uploads-download-log/nohup-download.out 2>&1 &

命令中的什么12,在linux里邊表示‘標(biāo)準(zhǔn)輸出’烘绽、‘標(biāo)準(zhǔn)錯誤’ 俐填,2>&1表示標(biāo)準(zhǔn)錯誤以后臺模式重新向到標(biāo)準(zhǔn)輸出中
具體參考:https://www.cnblogs.com/jerrylocker/p/10824686.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末英融,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子胡野,更是在濱河造成了極大的恐慌痕鳍,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件熊响,死亡現(xiàn)場離奇詭異诗赌,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)洪碳,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門瞳腌,熙熙樓的掌柜王于貴愁眉苦臉地迎上來镜雨,“玉大人,你說我怎么就攤上這事吵冒。” “怎么了痹栖?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵揪阿,是天一觀的道長。 經(jīng)常有香客問我吴裤,道長溺健,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任剖膳,我火速辦了婚禮岭辣,結(jié)果婚禮上沦童,老公的妹妹穿的比我還像新娘仑濒。我一直安慰自己偷遗,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布辅柴。 她就那樣靜靜地躺著,像睡著了一般碌嘀。 火紅的嫁衣襯著肌膚如雪股冗。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天烹棉,我揣著相機(jī)與錄音,去河邊找鬼催束。 笑死伏社,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的速妖。 我是一名探鬼主播聪黎,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼稿饰,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了湘纵?” 一聲冷哼從身側(cè)響起梧喷,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎铺敌,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體产弹,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡弯囊,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了斤斧。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片霎烙。...
    茶點(diǎn)故事閱讀 39,690評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖游昼,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情烘豌,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布昧捷,位于F島的核電站靡挥,受9級特大地震影響鸯绿,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜瓶蝴,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一舷手、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧盆赤,春花似錦歉眷、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至淡溯,卻和暖如春簿训,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背膘侮。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工的榛, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人雕薪。 一個(gè)月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓晓淀,卻偏偏與公主長得像凶掰,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子懦窘,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容