当前位置: 首页 > news >正文

基于python3的http文件服务器

前言


跨环境或者跨跳板机传输文件很麻烦,比如从windows系统跨跳板机传输文件到linux系统,这时候scp就不适用了。

比较简单的方式是,从windows系统开一个http文件服务,然后从linux系统直接使用http链接下载。

如果是自己的环境,直接使用python3 -m http.server --bind 0.0.0.0 端口号 即可,但是如果给一个没有python环境
的windows系统使用,就需要把脚本编译成二进制文件。这里使用nuitka打包的方式。

正文


httpServer.py

import http.server
import socketserver
import argparsedef main():# 解析命令行参数,模拟原生http.server的参数parser = argparse.ArgumentParser(description='简易HTTP文件服务器')parser.add_argument('port', nargs='?', type=int, default=12123,help='端口号 (默认: 12123)')parser.add_argument('--bind', '-b', default='0.0.0.0',help='绑定的地址 (默认: 0.0.0.0)')args = parser.parse_args()# 配置服务器Handler = http.server.SimpleHTTPRequestHandlerwith socketserver.TCPServer((args.bind, args.port), Handler) as httpd:print(f"服务器运行在 http://{args.bind}:{args.port}/")print("按 Ctrl+C 停止服务器")try:httpd.serve_forever()except KeyboardInterrupt:print("\n服务器正在停止...")httpd.shutdown()print("服务器已停止")if __name__ == '__main__':main()

打包
mkpkg.bat

python3 -m nuitka --onefile --output-dir=dist --enable-console .\httpServer.py

打包完成后,会在本地生成dist文件夹,其中有一个 httpServer.exe,双击运行
image

从浏览器访问:http://电脑ip:12123 , 可以看到 httpServer.exe 同目录的文件可以通过浏览器看到了
image

http://www.rkmt.cn/news/6067.html

相关文章:

  • sql server2008大批量插入数据
  • HCIP—Eth-Trunk
  • 一个还不错的,简单的,前端vue2后台框架
  • 2025暑假集训总结lh
  • ET框架的 阻止 ddos 设计,软路由
  • cURL调试功能磁盘空间耗尽导致拒绝服务漏洞分析
  • mysql常用函数,数据处理效率提升实战指南
  • Mysql索引失效场景
  • 农田水利综合信息管理平台
  • 【云栖大会】AI原生、AI可观测、AI Serverless、AI中间件,4场论坛20+议题公布!
  • 2D变换——坐标系
  • P13693 [CEOI 2025] Equal Mex 题解
  • 力扣46题 全排列
  • 达成调用libchdb.a静态连接库中的未公开导出函数
  • Redis常用命令
  • .NET驾驭Word之力:理解Word对象模型核心 (Application, Document, Range)
  • 事件轮循机制EventLoop
  • 大模型与知识图谱驱动测试公开课
  • 上位机项目展示
  • 美化自己的Github主页-Github profile页面仓库使用指南
  • windows系统下anaconda的安装和使用
  • Lock分析:systemstate分析row cache lock
  • 遗传算法与偏最小二乘结合的化学光谱变量选择方法
  • 云剪贴板
  • nvm与node.js的安装指南
  • 在Android开发中实现两个Intent跳转及数据交换的方法
  • ARC188 做题记
  • AT_arc145_d [ARC145D] Non Arithmetic Progression Set
  • C# 多线程编程核心要点:不只是Thread和lock
  • 研究生学术英语读写教程(中国科学院大学出版) Unit10 TextA 原文以及翻译(仅供学习)