python上传本地文件到ftp_用python上传制定目录文件到ftp服务器.

# -*- conding:utf-8 -*-

'''

给XX传输数据

'''

import ftplib

import os

import time

import shutil

def read_print_log(str_):

timestr = time.strftime('%Y%m%d:%H%M%S',time.localtime(time.time()))

logname = time.strftime('%Y%m%d',time.localtime(time.time()))+'.log'

print(timestr+' '+str_)

with open(logname,'a+') as l:

l.write(timestr+' '+str_+'\n')

def ftplogin_gl(host,user,passw):

ftphost = host

ftpuser = user

ftppass = passw

while True:

try:

ftpgl = ftplib.FTP(ftphost)

ftpgl.login(ftpuser,ftppass)

str_log = 'ftp连接成功!'

read_print_log(str_log)

return ftpgl

except:

str_log = 'ftp连接失败'

read_print_log(str_log)

time.sleep(3)

def ml_files(ml_):

file_list = []

while True:

if os.listdir(ml_):

str_log = '扫描到文件'

read_print_log(str_log)

for file in os.listdir(ml_):

file_list.append(os.path.join(ml_,file))

return file_list

else:

print('目录内没有文件等待5秒')

time.sleep(5)

continue

def sendfile(ftp_o,file,bak_ml):

file_name = os.path.basename(file)

try:

with open (file,'rb') as f:

print ('1')

ftp_o.storbinary('STOR '+file_name,f)

print ('2')

shutil.move(file,os.path.join(bak_ml,file_name))

str_log = file+'上传成功!'

read_print_log(str_log)

except:

str_log = '上传失败!'

time.sleep(3)

read_print_log(str_log)

ftpgl = ftplogin_gl(ftphost,ftpuser,ftppass)

sendfile(ftpgl,file,bak_ml)

if __name__=='__main__':

files_ml = r'C:\Users\Administrator\Desktop\2019\python\gl'

bak_ml = r'C:\Users\Administrator\Desktop\2019\python\glbak'

ftphost = r'192.168.1.11'

ftpuser = 'ftp'

ftppass = 'ftp'

ftpgl = ftplogin_gl(ftphost,ftpuser,ftppass)

while True:

for file in ml_files(files_ml):

sendfile(ftpgl,file,bak_ml)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值