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)
blank

相关推荐

  • springboot实战第五章-springboot基础

    springboot实战第五章-springboot基础

  • Qt多线程通信

    Qt多线程通信简述:1>Qt线程间共享数据主要有两种方式:1)使用共享内存。即使用一个两个线程都能够共享的变量(如全局变量),这样两个线程都能够访问和修改该变量,从而达到共享数据的目的。2)使用singal/slot机制,把数据从一个线程传递到另外一个线程。第一种方法在各个编程语言都普遍使用,而第二种方法是QT的特有的,本文主要介绍第二种。2>

  • WinHttp 类封装「建议收藏」

    WinHttp 类封装「建议收藏」头文件#pragmaonce#include<Windows.h>#include<stdio.h>#include<string>usingstd::string;usingstd::wstring;boollibHttp_Get(wstringwszServerName,WORDnServerPort,wstringw…

  • QueryInterface 实现及使用的完整的例子

    QueryInterface 实现及使用的完整的例子下面我们将把前面所提到过和各代码段组合起来,以构成一个说明QueryInterface实现及使用的完整例子。总的来说可以将这些代码分成三部分。第一部分是接口IX、IY和IZ的定义部分。接口IUnknown的定义在Win32SDK的头文件1见UNKNWN.H中。第二部分是组件的实现。类CA实现了一个支持IX和IY接口的组件。QueryInterface的实现

  • extjs_03_grid(添加数据)

    extjs_03_grid(添加数据)

  • 国科大英语测试Unit3

    国科大英语测试Unit3TranslationandParaphrasingWithoutthe1968experimentsofKendall,FriedmanandTaylorattheStanfordLinearAcceleratorCenter(SLAC),quarkswouldhaveremainedameretheory,awill-o-wispwhoseexistencewasconfidentlypostulatedbutneverproven

发表回复

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

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