目录

问题描述

解决办法


问题描述

在工作中,我们经常遇到文件传输这样的事情,小文件传输,一般使用QQ或者微信就能满足,但当传输文件几百MB或者几十G时,这种传输效率就有点捉襟见肘;同时,我们也可以用U盘或者移动硬盘进行拷贝,但偶尔移动硬盘满了或者没有携带时候,就尴尬了。

本文可以用Python搭建一个简单HTTP服务,在一个局域网内可以达到几十兆的速度。

解决办法

python -m http.server格式说明

$ python -m http.server --help
usage: server.py [-h] [--cgi] [--bind ADDRESS] [--directory DIRECTORY] [port]

positional arguments:
  port                  Specify alternate port [default: 8000]

optional arguments:
  -h, --help            show this help message and exit
  --cgi                 Run as CGI Server
  --bind ADDRESS, -b ADDRESS
                        Specify alternate bind address [default: all
                        interfaces]
  --directory DIRECTORY, -d DIRECTORY
                        Specify alternative directory [default:current
                        directory]

如果想提供一个下载目录,例如:/data ;那么在终端命令里面执行 cd /data;然后执行命令: python -m http.server

默认的端口号是8000, 服务器根目录就是运行python命令的工作目录

用http://127.0.0.1:8000即可访问目录下内容

或者加上端口号:python -m http.server 8000

用http://127.0.0.1:8000即可访问目录下内容

用Python实现简单的HTTP服务器如下三种:

  1. BaseHTTPServer:提供基本的Web服务和处理器类,分别是HTTPServer及BaseHTTPRequestHandler;
  2. SimpleHTTPServer:包含执行GET和HEAD请求的SimpleHTTPRequestHandler类;
  3. CGIHTTPServer:包含处理POST请求和执行的CGIHTTPRequestHandler类。
    在我目前的实现中,主要采用BaseHTTPServer模块。

参考网址:

  1. https://blog.csdn.net/qq_35396598/article/details/88421581
  2. https://blog.csdn.net/e_Inch_Photo/article/details/80060952


 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐