FTP 服务器在WIN10上的搭建及服务端下载文件实例
1.搭建
(1)控制面板--->程序----->将FTP服务器打勾

(2)输入iis,或者右键桌面-->管理-->服务和应用程序--->internet information service,右键网站,添加FTP站点。

(3)cmd输入ipconfig/all,查询本机ip地址,将Ip地址填入。

(4)打勾如下

(5)确定,然后重启计算机生效。加入Ip地址是1.2.3.4,在浏览器输入ftp://1.2.3.4,跳转至物理地址。
2.客户端下载文件实例
from ftplib import FTP
import sys,os
print(sys.executable)
os.chdir(r'C:\Users\旺仔QQ糖\Desktop\webpageDesign')
filepath='pic'
Host='1.2.3.4'
files=['1.png','2.png','3.png','4.png']
def getFiles(files,ftp,bufsize):
for file in files:
ftp.retrbinary('retr '+file,open(file,'wb').write,bufsize) f=FTP(Host)
f.login()
print('success login')
f.encoding='GB18030' # encod chinese character f.cwd(flepath)
getFiles(files,f,1024)
需要注意的是需要 f.encoding='GB18030',否则汉字将出现乱码。
(3)也可以直接通过urllib.request.urlretrieve(url,filename=None)来下载,但应注意的是url路径中不能出现中文,filename是保存到客户端后的文件名。
urllib.request.urlretrieve(u'ftp://172.17.113.68/design.docx','设计总结0.docx')
如果下载本文所在的html文件:
urllib.request.urlretrieve('https://www.cnblogs.com/johnyang/p/12376833.html','blog.html')
3.实用上传下载脚本
from ftplib import FTP
Host=input('>>>input IP...')
print('Get Host= %s'% Host)
def retry(Host):
try:
f=FTP(Host)
f.login()
f.encoding='GB18030'
print('connected successfully')
print('Use f.dir() to show the current files in the file fold,Use f.cwd() to get into the inner file fold')
return f
except:
print('Try to connect VPN') def downloadFile(f,filename):
try:
f.retrbinary('retr '+filename,open(filename,'wb').write)
print('Downloading successfully')
except:
print('Fail to fetch') def uploadFile(f,filename):
try:
f.storbinary('stor '+filename,open(filename,'rb'))
print('uploading successfully')
except:
print('Fail to push') if __name__=='__main__':
Host='1.2.3.4'
retry(Host)
FTP 服务器在WIN10上的搭建及服务端下载文件实例的更多相关文章
- 【2017-05-30】WebForm文件上传。从服务端删除文件
用 FileUpload控件进行上传文件. <asp:FileUpload ID="FileUpload1" runat="server" /> ...
- 通过JAVA对FTP服务器连接,上传,下载,读取,移动文件等
记录一次对FTP服务器文件内容 通过Java程序对FTP服务器文件处理:连接,上传,下载,读取,移动文件等. 需求描述:今天接到一个任务,在Java项目中,读取FTP服务器上的一些文件,进行一些业务操 ...
- contos7搭建syslog服务端与客户端
搭建中心服务端1,编辑文件/etc/rsyslog.conf,找到以下内容,将前面的#注释符合去除#$ModLoad imtcp#$InputTCPServerRun 514 2,在/etc/rsys ...
- Centos6.9 搭建rsync服务端与客户端 案例:全网备份项目
rsync的企业工作场景说明 1)定时备份 1.1生产场景集群架构服务器备份方案项目 借助cron+rsync把所有客户服务器数据同步到备份服务器 2)实时复制 本地数据传输模式(local-only ...
- 快速搭建Kerberos服务端及入门使用
快速搭建Kerberos服务端及入门使用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Kerberos是一种网络身份验证协议.它旨在通过使用秘密密钥加密为客户端/服务器应用程序提 ...
- 最全Linux搭建SVN服务端教程
文章首推 支付宝接口对接 高德地图调用 验证码登录 QQ邮箱登录 今日主题:Linux搭建SVN服务端 简介 相信程序员对SVN还是不陌生的,虽然现在用Git比较多,但是SVN也是用的,SVN可以做代 ...
- OpenResty搭建高性能服务端
OpenResty搭建高性能服务端 Socket编程 Linux Socket编程领域为了处理大量连接请求场景,需要使用非阻塞I/O和复用,select.poll.epoll是Linux API提 ...
- 《用OpenResty搭建高性能服务端》笔记
概要 <用OpenResty搭建高性能服务端>是OpenResty系列课程中的入门课程,主讲人:温铭老师.课程分为10个章节,侧重于OpenResty的基本概念和主要特点的介绍,包括它的指 ...
- vue.js+koa2项目实战(四)搭建koa2服务端
搭建koa2服务端 安装两个版本的koa 一.版本安装 1.安装 koa1 npm install koa -g 注:必须安装到全局 2.安装 koa2 npm install koa@2 -g 二. ...
随机推荐
- SD-WAN功能
SD-WAN功能 在这些底层技术的基础之上,SD-WAN最终能为客户提供哪些创新型服务.解决哪些具体问题? 统一管理与监控:SD-WAN整合了路由器.防火墙.DPI检测.广域网加速等功能,确保企业真正 ...
- WEB安全 - XSS,CSRF
1. CSRF参考 https://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/ https://en.wikipedia.org/wiki ...
- 「模板」可持久化 HFQ-Treap
老师用的是静态数组的写法,开了很多数组- 其实个人更倾向于 struct 或者用 class 封装起来. 但是鉴于太难打 好吧,是我懒得打. 然后就借鉴了老师的模板,写出了属于自己的 压行 风格. 代 ...
- Tachyon---基于内存的分布式存储系统
Tachyon是一个以内存为核心的开源分布式存储系统,也是目前发展最迅速的开源大数据项目之一.Tachyon为不同的大数据计算框架(如Apache Spark,Hadoop MapReduce, Ap ...
- PAT T1024 Currency Exchange Centers
krustral算法求最少结点数的最小生成树,用优先队列实时排序,优先选择已经被选中的中心~ #include<bits/stdc++.h> using namespace std; ; ...
- http://www.yyne.com/python使用-urllib-quote-进行-url-编码小技巧/
http://www.yyne.com/python使用-urllib-quote-进行-url-编码小技巧/
- day 11 笔记
# 装饰器形成的过程 : 最简单的装饰器 有返回值的 有一个参数 万能参数 # 装饰器的作用 # 原则 :开放封闭原则 # 语法糖 :@ # 装饰器的固定模式 #不懂技术 import time # ...
- 借助工具解决DNS污染
我第一次接触到DNS污染,是在GitHub上面进行学习的时候,发现头像加载出问题,加载失败,而且文档里面的图片也无法显示...... 百度了很多内容,差不多都试了一下,最终选择了使用DNS工具去解决 ...
- SpringMVC——SSM整合
1.环境要求: IDEA MySQL 5.1.19 Tomcat 9 Maven 3.6.1 2.数据库环境搭建 创建一个存放书籍的数据库表 CREATE DATABASE `ssmbuild`; U ...
- XModem与YModem
XModem用在串口异步传文件: #define SOH 0x01 #define STX 0x02 #define EOT 0x04 #define ACK 0x06 #define NAK 0x1 ...