py ftp

简介:
./pyftp_sync.py /tongbu/day/spbusinessinfo/all/$mydate-walkman.000 $mydir$mydate-walkman.000 218.205.XXX.XXX Name Pass123 get >> pyftp_sync.log
# !/usr/bin/python
#
 -*- coding: utf-8 -*-
import  ftplib
import  datetime
import  os
import  sys
import  socket
import  time
# time access
TF0 = ' %Y-%m-%d-%H:%M:%S '
MAX_RETRY
= 60
SLEEP_TIME
= 30
#
#
虏脦媒潞
#
脦录镁卤戮碌氐脴路
#
脦录镁ftp目碌牡脴路
#
ftp ip
#
ftp脫禄搂脙
#
ftp脙脗
#

# cal src file path
dpath = sys.argv[ 1 ]
print   " [ "   +  datetime.datetime.now().strftime(TF0) + " ] -  " + " dpath= " + dpath
# cal desc file path
spath = sys.argv[ 2 ]
ftp_addr
= sys.argv[ 3 ]
ftp_usr
= sys.argv[ 4 ]
ftp_pwd
= sys.argv[ 5 ]
ftp_method
= sys.argv[ 6 ]
print   " [ "   +  datetime.datetime.now().strftime(TF0) + " ] -  " + " spath= " + spath
print   " [ "   +  datetime.datetime.now().strftime(TF0) + " ] -  " + " ftp= " + ftp_addr + " ,user= " + ftp_usr + " ,pwd= " + ftp_pwd


if  ftp_method  ==   ' put '   and  os.path.isfile(spath)  is  False:
        
print   " [ "   +  datetime.datetime.now().strftime(TF0) + " ] - [ERROR]  " + " spath= " + spath + "  not exists "
else :

        
for  i  in  range(MAX_RETRY):
                
try :
                        
# ftp connection
                        ftp  =  ftplib.FTP()
                        ftp.set_debuglevel(
2 )
                        ftp.connect(ftp_addr,
21 )
                        ftp.login(ftp_usr, ftp_pwd)
                        
# ftp.mkd("test1")
                         if  ftp_method  ==   ' put ' :
                            
print   " put "
                            ftp.storbinary(
" STOR  "   +  dpath, open(spath))
                        
if  ftp_method  ==   ' get ' :
                            
print   " get "
                            
# ftp.set_pasv(True);
                            ftp.retrbinary( " RETR  "   +  dpath, open(spath, ' wb ' ).write)
                        
# ftp.storlines("STOR " + dpath, open(spath))

                        
# check file
                        sfile_size = os.path.getsize(spath)
                        
print   " [%s] - file size=%.3fK "   %  (datetime.datetime.now().strftime(TF0), sfile_size / 1024 )
                        dfile_size
= ftp.size(dpath)
                        
if  sfile_size  ==  dfile_size:
                                
print   " [ "   +  datetime.datetime.now().strftime(TF0) + " ] -  " + " send file success "
                                ftp.quit()
                                ftp.close()
                                
break
                        
print   " [%s] - failed on check: src size.%d != desc size%d "   %  (datetime.datetime.now().strftime(TF0),sfile_size,dfile_size)
                        ftp.quit()
                        ftp.close()
                
except  Exception, myError:
                        excType, excValue, traceBack 
=  sys.exc_info()
                        
print  excType
                        
print  myError
                        
# print excValue
                         # print traceBack
                time.sleep(SLEEP_TIME)

本文转自博客园刘凯毅的博客,原文链接:py ftp,如需转载请自行联系原博主。
目录
相关文章
|
1月前
|
Python
py ftp
py ftp
28 4
|
6月前
|
SQL 分布式计算 DataWorks
DataWorks常见问题之dataworks连接FTP服务器失败如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
6月前
|
Ubuntu 安全 网络安全
百度搜索:蓝易云【Ubuntu系统搭建FTP服务器教程】
现在,你已经成功在Ubuntu系统上搭建了FTP服务器。你可以使用FTP客户端连接到你的FTP服务器,并上传、下载文件。注意,为了安全起见,建议配置SSL/TLS加密以保护数据传输。
104 0
|
1月前
|
网络协议 文件存储 Windows
Windows Server 2019 FTP服务器搭建
Windows Server 2019 FTP服务器搭建
|
1月前
|
安全 网络协议 网络安全
Windows Server 2003 FTP服务器搭建
Windows Server 2003 FTP服务器搭建
|
1月前
|
弹性计算 关系型数据库 网络安全
阿里云国际版无法连接和访问Windows服务器中的FTP服务
阿里云国际版无法连接和访问Windows服务器中的FTP服务
|
3月前
|
安全 Ubuntu Linux
在Linux中,如何进行FTP服务器配置?
在Linux中,如何进行FTP服务器配置?
|
4月前
|
网络协议 Unix 网络安全
FTP服务器怎么搭建?Windows server搭建FPT服务器
FTP服务器是按照FTP协议提供文件传输服务的计算机。它用于在两台计算机间安全地传输文件,支持用户权限管理和跨平台操作。FTP使用控制连接处理命令,数据连接传输文件,有PORT和PASV模式。要搭建FTP服务器,首先在Windows Server 2008 R2上安装IIS,确保选中FTP服务。接着,创建FTP文件夹作为站点根目录,通过IIS管理器添加FTP站点,配置站点信息、身份验证和权限。测试客户端通过telnet和浏览器访问FTP服务器,确认能成功登录及浏览文件。FTP常用于文件共享和管理,可通过专用工具如FlashFXP上传下载文件。
163 0
FTP服务器怎么搭建?Windows server搭建FPT服务器
|
5月前
|
存储 数据库连接 数据库
如何使用Python上传文件到FTP服务器
如何使用Python上传文件到FTP服务器
78 1
|
6月前
|
存储 运维 程序员
快速搭建一个FTP服务器
快速搭建一个FTP服务器
112 0