python一行实现局域网内传输文件[通俗易懂]

python一行实现局域网内传输文件[通俗易懂]python一行实现局域网内传输文件熟悉python的大家伙,对于这个应该不陌生,这个功能我一直都在使用,今天想记录一下其实时想抛砖引玉。缘由记得那是刚开始学习python,对任何精简而强大的功能都感到好奇。从任何平台,只要看到关于python的文章,就会点进去进行深度阅读。久而久之,的确学习到了一些小技巧,或言之投机取巧吧。比如,这个用python来实现局域网内文件传输,就是在用了坚果pr…

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

python一行实现局域网内传输文件

熟悉python的大家伙,对于这个应该不陌生,这个功能我一直都在使用,今天想记录一下其实时想抛砖引玉。

缘由

记得那是刚开始学习python,对任何精简而强大的功能都感到好奇。从任何平台,只要看到关于python的文章,就会点进去进行深度阅读。久而久之,的确学习到了一些小技巧,或言之投机取巧吧。比如,这个用python来实现局域网内文件传输,就是在用了坚果pro之后的想法。

因为使用了坚果pro,我知道了 handshaker 这个软件,这个软件的功能就是,电脑和手机在同一个局域网的时候,都打开软件,可以进行无线连接,向电脑或者手机传输文件。

这不就很方便嘛,以前还老是拿数据线传输,还真别说,获得了本人的青睐。(((φ(◎ロ◎;)φ))),一定有人说了,那无线速度会不会慢啊。实际使用中发现,无线其实受很多因素影响,速度是会受到影响的。但是那并不是技术的原因,无线带来的不用插拔线头的便捷性,是非常优越的,速度受影响,只是因为环境不好。

话不多说,直接开干

这个功能从 python2 一直就有了,我现在就直接从 python3 开始喽,打开 cmd 输入:

python -m http.server 80

完活,解释如下:

  1. python 使用这个的前提是电脑已经安装 python3 以上版本,并成功加入环境变量;
  2. 然后就输入上面一整行代码,enter 就行;

这个时候其实服务器已经创建了,命令窗口会有如下提示:

Microsoft Windows [版本 10.0.17763.1]
(c) 2018 Microsoft Corporation。保留所有权利。

C:\Users\Administrator>python -m http.server 80
Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...
_

该提示表示已经开启服务器,端口号:80

紧接着怎么使用呢,打开浏览器,在浏览器中输入你的 IP地址 + 端口号回车 可以了,如:

192.168.1.31:80

此时如果正常,你的浏览器就应该可以显示出如下画面了:

Directory listing for

这个就是运行命令行的当前目录,所以问题来了,如果你想要传输某一个文件,就必须在该文件对应的目录下执行这段代码,而且也很有可能不知道自己电脑的IP地址啊,为了方便,我可以使用如下方法:

  1. 在需要传输的文件同目录下,鼠标点击右键 在此处打开cmd 或 在此处打开 powershell ,之后执行如上命令;
  2. 新建文本,文本内输入内容:
@echo off
ipconfig /all
python -m http.server 80

保存文本,修改名称为自己想要的名字,后缀设为 .bat

使用如上方式,就可以在一个会定期更换IP地址的场景下使用了,而且只要双击即可。我在电脑的某个磁盘的文件夹下使用,该文件夹就一直存放需要传输的文件,现在工作了,同事之间传送点比较大的文件,还是相当方便的。几个G的资料,每秒能跑50mBps,感觉比硬盘都快,屡试不爽。

后来

这样使用还是有很多需要注意的地方:

  • 如果在浏览器输入的时候,不输入 :80 即端口号,也是可以的;
  • 下载的时候,必须下载文件,建议先压缩,在借助浏览器下载;
  • 如果手机端使用浏览器支持,可以在线播放mp4等文件,而且可以随意拖动进度条;
  • ipad上的safari浏览器体验不佳;

以上的已经能满足我平日里的需求了,所以也没有再继续研究过,我其实不关系这个东西的原理,我只关心它好用就行,直到前些天,我遇到了另外一个常用的软件也同步有此功能,这就是我想要引出来的玉everything开启服务器功能

After

Drafter : LJacki

Date : 2019-04-07

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

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

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

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

(0)


相关推荐

  • mysql查询每个用户的第一条记录_mysql怎么创建用户

    mysql查询每个用户的第一条记录_mysql怎么创建用户数据库记录:MYSQL查询不同用户最新的一条记录方法1:查询出结果后将时间排序后取第一条(只能取到一条,并且不能查询不同客户的记录)SELECTCUSTOMER_ID,CONTENT,MODIFY_TIMEFROM`service_records`ORDERBYMODIFY_TIMEDESCLIMIT1;查询结果:方法2:查询排序后groupby(先按照MODIFY_TI…

  • 堆栈callstack打印

    堆栈callstack打印一、适用java1、Log.d(TAG,Log.getStackTraceString(newThrowable()));//在使用Log.d的场合2、newException(“testprintkstack”).printStackTrace();Note:还有其他方法,可以参考网络

    2022年10月25日
  • JMM内存模型

    JMM内存模型Java内存模型即JavaMemoryModel,简称JMM。JMM定义了Java虚拟机(JVM)在计算机内存(RAM)中的工作方式。JVM是整个计算机虚拟模型,所以JMM是隶属于JVM的。如果我们要想深入了解Java并发编程,就要先理解好Java内存模型。Java内存模型定义了多线程之间共享变量的可见性以及如何在需要的时候对共享变量进行同步。原始的Java内存模型效率并不是很理想,

  • android P系统访问http请求最简单解决方案

    在sdk28也就是P系统请求是http协议的话会报错:java.net.UnknownServiceException:CLEARTEXTcommunication**notpermittedby**是我的包名这是因为Google在sdk28做了限制加强了安全为保证用户数据和设备的安全,Google针对下一代Android系统(AndroidP)的应用程序…

  • INS-20802 Oracle Cluster Verification Utility failed解释说明[通俗易懂]

    INS-20802 Oracle Cluster Verification Utility failed解释说明

  • Socket 非阻塞模式下connect 返回EINPROGRESS(115)错误[通俗易懂]

    Socket 非阻塞模式下connect 返回EINPROGRESS(115)错误[通俗易懂]今天再测试socket的时候,发现一个很奇怪的问题,就是客户端再connect的时候第一次connect总是会返回-1,errno是115,往往第二次连接就可以成功了。但是对于服务端来说,第一次连接已经成功返回了。后来想想可能跟自己的设置socket是非阻塞的有关系,后来吧socket设置成阻塞的,问题确实就没有了。后来有反复尝试了非阻塞的。我先把服务器关闭,让客户端连接,可以发现从打出来的e…

发表回复

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

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