目录
最为“电脑爱好者”熟知的跨平台网络文件共享,莫过于Samba服务了。依靠Samba,可以方便地在Unix、类Unix、Windows操作系统之间,实现文件共享。
当然,在网络的世界里,TFTP、FTP、SFTP等文件传输协议,亦为广大网络工程师所熟知,历久而弥坚。
然而,Python内置的http server却略显小众。
目录
1、Python3开启http server服务
(1)服务指令
python3可以为当前目录开启http server,实现该目录下,文件的网络共享。
通过以下指令,python会默认开启一个端口为8000的http服务
python -m http.server如果想更换端口,直接在指令最后加端口号即可
python -m http.server 6666(2)效果
python3开启http server,默认端口为8000
username@usernamedeMacBookPro1 Downloads %python -m http.server Serving HTTP on :: port 8000 (http://[::]:8000/) ...python3开启http server,手动指定端口为6666
heping@hepingdeMacBookPro1 Downloads %python -m http.server 6666 Serving HTTP on :: port 6666 (http://[::]:6666/) ...例:查看浏览器访问效果
# 打开终端进入~/Downloads目录 cd ~/Downloads python -m http.server # 用浏览器打开URL::8000 或 :8000 或 http://::1:8000浏览器效果如下:
用safari查看该目录是否启用http server2、文件传输试验
实验演示。利用Python3自带的http.server,完成文件的网络共享。
(1)实验说明
如图,MacOS在~/Download目录下,创建文件file1.txt、file2.txt、file3.txt,并用python3开启该目录的http server。使用Windows浏览器打开下载file3.txt文件。
实验拓扑(2)实验操作
MacOS
username@usernamedeMacBookPro1 Downloads %pwd /Users/username/Downloads username@usernamedeMacBookPro1 Downloads % username@usernamedeMacBookPro1 Downloads %touch file{1..3}.txt username@usernamedeMacBookPro1 Downloads % username@usernamedeMacBookPro1 Downloads %ll total 0 drr-xr-x3 username staff968 172020 $RECYCLE.BIN -rw-r--r--1 username staff 037 13:26 file1.txt -rw-r--r--1 username staff 037 13:26 file2.txt -rw-r--r--1 username staff 037 13:26 file3.txt username@usernamedeMacBookPro1 Downloads % username@usernamedeMacBookPro1 Downloads %echo hello python http server > file{1..3}.txt username@usernamedeMacBookPro1 Downloads % username@usernamedeMacBookPro1 Downloads %ifconfig vmnet9 vmnet9: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500 ether 00:50:56:c0:00:09 inet 192.168.47.1 netmask 0xffffff00 broadcast 192.168.47.255 username@usernamedeMacBookPro1 Downloads %python -m http.server 65500 Serving HTTP on :: port 65500 (http://[::]:65500/) ...截图查看Downloads目录
图形界面查看Downloads目录下的文件Windows
打开windows浏览器,下载file3.txt,并展示。
查看Windows的IP地址确保和MacOS的IP地址在同一网段使用Windows的Chrome浏览器访问MacOS的http服务,注意端口号下载file3.txt文件到桌面在WIndows桌面展示下载的file3.txt文件这样做,就很容易实现临时的文件传输。比如同寝室的大学生,需要传输一个游戏安装包给室友,那么自己就可以利用python在安装包目录中开启http server,只要自己和室友的网络互通,就可以通过http实现简单的网络共享。
惰惰猴5 次咨询5.07184 次赞同去咨询3、网络工程师学习视频推荐
有很多使用Windows的同行,对类Unix和Python十分陌生,如果正苦于没有好的渠道入门,我推荐知乎站内的以下视频课程。该视频从GNU-Linux讲起、逐渐引入Python基础,值得一看。
Python 深入浅出进阶课程 - 知乎www.zhihu.com/education/video-course/?section_id=www.zhihu.com/education/video-course/?section_id=