python中http.server内置库构建临时文件服务

 更新时间:2025年12月26日 08:54:47   作者:atwdy  
使用Python的http.server模块启动一个本地文件服务器,通过浏览器下载大文件,解决了通过sz命令下载速度慢且不稳定的问题,下面就来具体了解一下

需要从linux开发机上下载一个文件到本地,约700M比较大,通过sz命令下载较慢且传输过程不稳定连续失败,后采用下面方式解决。

cd到一个目录下执行python -m http.server port,port为服务的端口号:

启动后浏览器中访问服务地址,从这里可以直接查看目录下所有的文件&下载。

下面是服务的参数源码:

主要参数:

  • -b绑定服务监听的ip地址,默认值0.0.0.0公网所有ip都可以访问,127.0.0.1只能本机访问,该参数不用调整。
  • -d设置哪个目录作为根目录,默认值执行命令时的当前所在目录。
  • port指定端口号,默认值8000,指定0会随机分配一个未使用的端口。

-d参数在一些较低python版本中可能没有,上面源码版本是Python 3.12.2,在Python 3.6.5版本中就没有这个参数。可以通过下面代码找到服务的源代码文件位置,直接查看源代码确定支不支持该参数。

import http.server
import inspect

print(inspect.getfile(http.server))
# 返回 http.server 模块的文件路径。

注意

启动服务后可能仍然访问不了服务,检查服务器端口配置,分配的端口是否对外可见。

可以通过nc命令测试:

1.服务器上指定监听的端口:nc -l -p port。
2.其他机器上echo 1 | nc ip port,ip为服务器的ip,可通过hostname -i获取。
3.查看服务器是否接收到其他机器发送的数据。

到此这篇关于python中http.server内置库构建临时文件服务的文章就介绍到这了,更多相关python http.server构建临时文件服务内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Django中从mysql数据库中获取数据传到echarts方式

    Django中从mysql数据库中获取数据传到echarts方式

    这篇文章主要介绍了Django中从mysql数据库中获取数据传到echarts方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • python 装饰器详解与应用范例

    python 装饰器详解与应用范例

    装饰器是 Python 的一个重要部分。简单地说:他们是修改其他函数的功能的函数。他们有助于让我们的代码更简短,也更Pythonic。大多数初学者不知道在哪儿使用它们,所以我将要分享下,哪些区域里装饰器可以让你的代码更简洁。 首先,让我们讨论下如何写你自己的装饰器
    2021-11-11
  • PyQt5组件读取参数的实例

    PyQt5组件读取参数的实例

    今天小编就为大家分享一篇PyQt5组件读取参数的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • 理论讲解python多进程并发编程

    理论讲解python多进程并发编程

    这篇文章主要从理论方面讲解python多进程并发编程的相关知识点,如果你也想学习这方面的知识,参考下吧。
    2018-02-02
  • python socket网络编程之粘包问题详解

    python socket网络编程之粘包问题详解

    这篇文章主要介绍了python socket网络编程之粘包问题详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • 利用python对mysql表做全局模糊搜索并分页实例

    利用python对mysql表做全局模糊搜索并分页实例

    这篇文章主要介绍了利用python对mysql表做全局模糊搜索并分页实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • python实用的快捷语法技巧大全

    python实用的快捷语法技巧大全

    初识Python语言,觉得python满足了我上学时候对编程语言的所有要求,下面这篇文章主要给大家介绍了关于python实用的快捷语法技巧的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-02-02
  • 如何使用Python 打印各种三角形

    如何使用Python 打印各种三角形

    这篇文章主要介绍了如何使用Python 打印各种三角形,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-06-06
  • Python调用jar包方法实现过程解析

    Python调用jar包方法实现过程解析

    这篇文章主要介绍了Python调用jar包方法实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • web自动化测试Selenium点击元素的常用方法

    web自动化测试Selenium点击元素的常用方法

    在Web自动化测试中,Selenium提供多种点击方法,常用的click()方法通过选中元素并触发点击事件,若click()方法不稳定,可以采用JavaScript执行点击或使用ActionChains类模拟鼠标点击,需要的朋友可以参考下
    2024-09-09

最新评论