使用python实现http及ftp服务进行数据传输的方法


Posted in Python onOctober 26, 2018

服务器之间的http数据传输

直接使用python内置的http服务:

python -m SimpleHTTPServer 8000

此时,输入指令的目录就已经开启了http服务,8000为端口(如不指定,默认为8000),如果我们需要在其他机器下垃取该目录下的文件,只需在目标机器运行:

wget ip:port/文件名

速度杠杆的。

开启ftp上传文件

安装ftp的python第三方组件

pip install pyftpdlib

编写启动脚本

from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer
import os

def main():
 # Instantiate a dummy authorizer for managing 'virtual' users
 authorizer = DummyAuthorizer()

 # Define a new user having full r/w permissions and a read-only
 # anonymous user
 authorizer.add_user('user', '12345', '.', perm='elradfmwM')
 authorizer.add_anonymous(os.getcwd())

 # Instantiate FTP handler class
 handler = FTPHandler
 handler.authorizer = authorizer

 # Define a customized banner (string returned when client connects)
 handler.banner = "pyftpdlib based ftpd ready."

 # Specify a masquerade address and the range of ports to use for
 # passive connections. Decomment in case you're behind a NAT.
 #handler.masquerade_address = '151.25.42.11'
 #handler.passive_ports = range(60000, 65535)

 # Instantiate FTP server class and listen on 0.0.0.0:2121
 address = ('', 8888)
 server = FTPServer(address, handler)

 # set a limit for connections
 server.max_cons = 256
 server.max_cons_per_ip = 5

 # start ftp server
 server.serve_forever()

if __name__ == '__main__':
 main()

其中8888是我设定的端口号,user是用户名,12345是我指定的密码,此时,我们至需要运行脚本,就可以使用ftp工具,连接该ftp服务器,并上传文件了。

如果我们不使用我们自己编写的脚本,而是直接使用内置的脚本:

python -m pyftpdlib -p 8888

此时,连接该ftp服务器,使用的是默认的用户:anonymous,但是当我们上传文件时,会发现,没有该用户的上传权限,所以,这里建议自己编写运行脚本。

以上这篇使用python实现http及ftp服务进行数据传输的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用装饰器时需要注意的一些问题
May 11 Python
20招让你的Python飞起来!
Sep 27 Python
Python 正则表达式入门(初级篇)
Dec 07 Python
详解python开发环境搭建
Dec 16 Python
python pandas 组内排序、单组排序、标号的实例
Apr 12 Python
Django错误:TypeError at / 'bool' object is not callable解决
Aug 16 Python
Python Gitlab Api 使用方法
Aug 28 Python
python3 pathlib库Path类方法总结
Dec 26 Python
tensorflow2.0的函数签名与图结构(推荐)
Apr 28 Python
Python爬虫爬取微信朋友圈
Aug 06 Python
python基础之爬虫入门
May 10 Python
如何理解及使用Python闭包
Jun 01 Python
python 快速把超大txt文件转存为csv的实例
Oct 26 #Python
python针对不定分隔符切割提取字符串的方法
Oct 26 #Python
Python3 利用requests 库进行post携带账号密码请求数据的方法
Oct 26 #Python
Python异常的检测和处理方法
Oct 26 #Python
Python subprocess库的使用详解
Oct 26 #Python
Python中浅拷贝copy与深拷贝deepcopy的简单理解
Oct 26 #Python
Python分割指定页数的pdf文件方法
Oct 26 #Python
You might like
PHP 关于访问控制的和运算符优先级介绍
2013/07/08 PHP
PHP获取网页标题的3种实现方法代码实例
2014/04/11 PHP
tp5实现微信小程序多图片上传到服务器功能
2018/07/16 PHP
javascript操作cookie_获取与修改代码
2009/05/21 Javascript
jQuery对象[0]是什么含义?
2010/07/31 Javascript
jquery解决客户端跨域访问问题
2015/01/06 Javascript
深入理解angularjs过滤器
2016/05/25 Javascript
Node.js的文件权限及读写flag详解
2016/10/11 Javascript
探索Javascript中this的奥秘
2016/12/11 Javascript
微信小程序 五星评分(包括半颗星评分)实例代码
2016/12/14 Javascript
Canvas + JavaScript 制作图片粒子效果
2017/02/08 Javascript
微信小程序 动态传参实例详解
2017/04/27 Javascript
vue组件Prop传递数据的实现示例
2017/08/17 Javascript
基于zepto.js实现登录界面
2017/10/09 Javascript
javascript、php关键字搜索函数的使用方法
2018/05/29 Javascript
详解vue 数组和对象渲染问题
2018/09/21 Javascript
PHP实现基于Redis的MessageQueue队列封装操作示例
2019/02/02 Javascript
详解小程序退出页面时清除定时器
2019/04/28 Javascript
javascript实现鼠标点击生成文字特效
2019/12/24 Javascript
Element Dialog对话框的使用示例
2020/07/26 Javascript
js实现贪吃蛇游戏 canvas绘制地图
2020/09/09 Javascript
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
2018/04/18 Python
将tensorflow的ckpt模型存储为npy的实例
2018/07/09 Python
Python GUI学习之登录系统界面篇
2019/08/21 Python
Python3之外部文件调用Django程序操作model等文件实现方式
2020/04/07 Python
Python reversed反转序列并生成可迭代对象
2020/10/22 Python
css3 box-sizing属性使用参考指南
2013/01/08 HTML / CSS
html5使用canvas绘制一张图片
2014/12/15 HTML / CSS
行政助理工作职责范本
2014/03/04 职场文书
政风行风整改报告
2014/11/06 职场文书
2014年工程师工作总结
2014/11/25 职场文书
公司股份合作协议书
2014/12/07 职场文书
成绩单评语
2015/01/04 职场文书
2015年度销售个人工作总结
2015/03/31 职场文书
市级三好生竞选稿
2015/11/21 职场文书
python绘制云雨图raincloud plot
2022/08/05 Python