updog:一款局域网传输文件的软件

updog:一款局域网传输文件的软件前言不知道你是否有过这样的需求,在局域网传输文件,苦于没有好的软件支持,或者只能单向传输,updog可以完全解决这种问题安装pip3installupdogupdog是python中的一个第三方库使用updog这里注意updog要在可以读写的路径下面运行,否则访问会出错,或者启动就会报错如果你不想切换到路径去运行,也可以使用-d去指定一个可读写的目录optiona…

大家好,又见面了,我是你们的朋友全栈君。

前言

不知道你是否有过这样 的需求,在局域网传输文件,苦于没有好的软件支持,或者只能单向传输,updog可以完全解决这种问题

安装

pip3 install updog

updog是python中的一个第三方库

使用

updog

这里注意 updog 要在可以读写的路径下面运行,否则访问会出错,或者启动就会报错
如果你不想切换到路径去运行,也可以使用-d 去指定一个可读写的目录

optional arguments:
  -h, --help            show this help message and exit
  -d DIRECTORY, --directory DIRECTORY
                        Root directory [Default=.]
  -p PORT, --port PORT  Port to serve [Default=9090]
  --password PASSWORD   Use a password to access the page. (No username)
  --ssl                 Use an encrypted connection
  --version             show program's version number and exit

在这里插入图片描述
启动后你可以通过输入对应的ip地址去访问, 可以上传文件和下载,还可以预览文件,图片视频音乐,不过视频只支持 mp4格式的预览

另外这个软件在电脑上运行后手机通过浏览器也可以和电脑之间相互传文件,web确实很通用

其他

遇到几个问题,可以通过修改源码的办法来解决:

  1. 每次启动后(因为我用的是chrome浏览器)网页会自动翻译,这然我感到难受,所以我简单的修改了一下它的源码
    路径在updog库文件updog/templates/home.html
    把里面大部分显示英文的地方翻译了一下,写成中问

    <html lang="en">
    

    主要这地方要把 lang去掉

  2. 上传中文文件后,文件名消失, updog/__main__.py 在 1145行
    在这里插入图片描述
    这问题主要是 secure_filename()函数会判断文件名是否安全,会把中文文件名直接去除,所以我们不使用这个函数就可以了,或者你也可以去修改 secure_filename() 这个函数的源码,网上有介绍的,不过我觉得没什么必要了,所以就没修改,因为我只是用这个做文件传输,不是搭建网站什么的

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/139810.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 【转载】分布式RPC框架性能大比拼

    【转载】分布式RPC框架性能大比拼

    2021年11月18日
  • C++ Primer笔记7_STL之关联容器

    C++ Primer笔记7_STL之关联容器

  • JS获取当前时间(年月日时分秒)「建议收藏」

    JS获取当前时间(年月日时分秒)「建议收藏」JS获取当前时间(年月日时分秒)JS获取当前时间(年月日时分秒)代码直接撸:**拿走直接用`//获取当前时间getNowTime(){vardate=newDate();//年getFullYear():四位数字返回年份varyear=date.getFullYear();//getFullYear()代替getYear()//月getMonth():0~11varmonth=date.getMonth()+1;//日getDate():(1

  • 我的世界设置坐标指令_我的世界坐标开启指令

    我的世界设置坐标指令_我的世界坐标开启指令发布时间:2016-04-11我的世界死亡不掉落指令如何开启,.玩家在游戏中死亡后,身上的物品会掉落,我们利用死亡不掉落指令可以阻止物品的掉落,那死亡不掉落指令如何开启?我的世界死亡不掉落指令是/give你的名字1371能得到命令方块.在…标签:我的世界死亡不掉落我的世界死亡不掉落指令我的世界死亡不掉落指令用法发布时间:2016-05-06我的世界死亡不掉落指令及开启方法,在…

  • 怎么创建java文件_如何创建java文件

    怎么创建java文件_如何创建java文件如何创建java文件?(1)开启Eclipse程序后,首先开始Eclipse中JAVA项目的新建,在上方的选项栏中选择“File——New——JavaProject”,系统会弹出新建项目的属性设置。(2)在JavaProject的设置页面,主要设置project的项目名称设置,以及路径设置,“JavaProject”的路径,一般是默认路径,取消“Usedefaultlocation”的勾…

  • TransactionScope事务处理

    TransactionScope事务处理在我们日常开发的时候,有时候程序需要使用到事务,就比如,我们日常最熟悉的一个流程,那么就是银行的取款,当用户从ATM机器选择取款1000元的时候,恰巧这个时候如果停电,如果没有事务那么将会出现不堪设想的后果,银行都会倒闭。最近在开发一个功能,需要根据单据的信息生成2张单据,要么全部保存,要么都保存失败,做到事务的一致性、原子性,一开始我想到的是SQL和存储过程级别的事务,但是好像按照当前的系统的业务逻辑,这个方法的底层还是拼接SQL语句,后面又想着使用C#的ADO.NET级别的事务,根据数据生成sql,但

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号