Python 自动化办公实战课
尹会生
前游戏公司技术总监,前新浪网研发中心技术经理
21781 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 37 讲
Python 自动化办公实战课
15
15
1.0x
00:00/00:00
登录|注册

17|不同操作系统下,如何通过网络同步文件?

如何使用“http.server”模块提供HTTP服务
HTTP协议的主要工作过程
如何使用“http.server”模块提供HTTP服务
如何通过命令行运行模块
传输速度快
跨操作系统,适用范围广
用法简单
保存文件
上传文件
获得网页内容
运行服务器
如何使用“http.server”模块提供HTTP服务
如何通过命令行运行模块
为什么要使用Python
实现文件下载的软件
思考题
小结
如何实现文件的上传
一行代码,实现文件的浏览和下载
为什么要使用Python?
不同操作系统下,如何通过网络同步文件?

该思维导图由 AI 生成,仅供参考

你好,我是尹会生。
你有没有过这种经历:慌慌张张地去会议室开会,突然发现自己需要的文件却在工位的台式电脑中。因为文件比较大大,通过互联网下载需要很长时间。如果用网盘来中转放在两个电脑上的文件,传输速度又很慢。
我猜这个时候你就会想:如果能用一台电脑实现文件的上传和下载,那文件传输是不是就非常方便快速了。
这当然是可以实现的。所以今天,我就教你怎样用 Python 基于 HTTP 协议,来实现跨操作系统的文件上传和下载功能。
今天要学习的代码都不长,比较精简,又和文字相得益彰,所以学起来也不会太累。那接下来就跟着我的思路走,我们先来了解一下使用 Python 来实现文件上传和下载的优势。

为什么要使用 Python?

实现文件下载的软件,相信你也用过很多,比如微信、QQ。用这些软件来传输文件,不仅要连接互联网,而且还有文件大小的限制。那如果用商业软件呢?传输虽然方便,但是就不能跨操作系统,而且还有可能需要付费。
所以综合下来,既要免费,又要传输快、没有大小限制的实现方式有没有呢?聪慧如你,一定知道接下来我会开始讲怎么用 Python 来实现文件的上传和下载功能了。别着急,我还要再唠叨几句关于用 Python 来实现的优势,这样你会学得更有劲儿。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

使用Python实现跨操作系统的文件上传和下载功能是本文的核心内容。文章首先介绍了Python的优势,包括简单易用、跨操作系统适用范围广、传输速度快等特点。然后详细讲解了通过一行代码实现文件的浏览和下载,以及如何通过命令行运行模块和使用“http.server”模块提供HTTP服务。作者还介绍了HTTP协议的工作过程和建立连接的过程,以及提醒了在文件下载时需要注意共享的安全性。最后,作者提到了使用Flask模块可以实现文件上传的功能。整体来说,本文通过简洁清晰的语言和实际案例,帮助读者快速了解了如何利用Python实现跨操作系统的文件同步功能。文章内容涵盖了Flask模块、HTTP协议的请求方式、简单的表单及其实现的HTML代码等内容,为读者提供了初步了解HTTP协议和WEB服务器的机会。文章还提出了思考题,引发读者思考和讨论。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Python 自动化办公实战课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(6)

  • 最新
  • 精选
  • 右耳先生
    "由此造成信息泄漏。因此在共享完成后,你需要把服务端及时关闭。"请问老师,怎么关闭服务端啊。

    作者回复: 要在服务端手动关闭运行的http进程才行,其实还有更稳妥的办法,但是实现起来稍显复杂。那就是在下载文件之前先进行用户名和密码的验证。

    2021-03-31
    2
    1
  • sec.link
    看到标题“同步文件”还以为是监控某个目录下的文件或目录变化,如果有变化同步到备份服务器,理解错了,老师对这个需求有没有好的组件和思路,十分感谢老师能给些提示😞

    作者回复: 当然有了,windows下可以用自带的API,FindFirstFileChange 和FindNextFileChange 还有个简单的方法就是用watchdog 参考这里: http://pypi.python.org/pypi/watchdog linux mac 可以用 pyinotify

    2021-03-20
    1
  • Kava
    老师,我把flask启动在linux上。然后上传一个几G的文件。提示空间不够: _write(event.data) File "/usr/local/lib/python3.6/tempfile.py", line 768, in write rv = file.write(s) OSError: [Errno 28] No space left on device 看了下是因为默认设置/tmp为临时存放目录。这个可以修改吗?

    作者回复: 当然可以了 你看代码的第四行 app.config['UPLOAD_FOLDER'] = os.getcwd() 这里使用了相对路径的写法,将上传目录指定成了“当前执行命令的目录”即你的/tmp。 那么更换目录就可以有两种思路了,第一种是执行flask启动的路径从/tmp改成其他目录 另一个是将os.getcwd() 改成一个你希望存放文件的目录 两种方法都建议你尝试一下,帮你更好的理解Python的写法

    2021-09-03
    2
  • Jerry
    请问,老师,是这么运行吗? 第一步:set FLASK_APP=app.py 第二步:flask run

    作者回复: 这是运行的方法之一,其他方法可以参考它的官方文档如下页面: https://dormousehole.readthedocs.io/en/latest/quickstart.html#id2

    2021-06-08
    2
  • ifelse
    学习打卡
    2023-07-14归属地:浙江
  • Dcy
    63666
    2021-08-31
收起评论
显示
设置
留言
6
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部