Python implements FTP to upload files in a loop

The examples in this article share the specific code of python to realize FTP uploading files for your reference. The specific content is as follows

During the test, sometimes the FTP data stream is used, or it is necessary to use FTP to upload files repeatedly, so I wrote a python code for FTP to upload files in a loop.

code show as below:

# coding=utf-8import sys
import os
from ftplib import FTP
from time import sleep

_ XFER_FILE ='FILE'
_ XFER_DIR ='DIR'classTransmitter(object): #note:Recursively upload local files or dirs to ftp server

 def __init__(self):
 self.ftp = None

 def __del__(self):
 pass

 def setFtpParams(self, ip, uname, pwd, port=21, timeout=60):
 self.ip = ip
 self.uname = uname
 self.pwd = pwd
 self.port = port
 self.timeout = timeout

 def initEnv(self):if self.ftp is None:
  self.ftp =FTP()print('###Connect to FTP server: %s ...'% self.ip)
  self.ftp.connect(self.ip, self.port, self.timeout)
  self.ftp.login(self.uname, self.pwd)

 def clearEnv(self):if self.ftp:
  self.ftp.close()print('###Disconnect FTP server: %s!'% self.ip)
  self.ftp = None

 def uploadDir(self, localdir='./', remotedir='./'):if not os.path.isdir(localdir):return
 self.ftp.cwd(remotedir)for file in os.listdir(localdir):
  src = os.path.join(localdir, file)if os.path.isfile(src):
  self.uploadFile(src, file)
  elif os.path.isdir(src):try:
   self.ftp.mkd(file)
  except:
   sys.stderr.write('Directory exists%s'% file)
  self.uploadDir(src, file)
 self.ftp.cwd('..')

 def uploadFile(self, localpath, remotepath='./'):if not os.path.isfile(localpath):returnprint('+++Upload%s to %s:%s'%(localpath, self.ip, remotepath))
 self.ftp.storbinary('STOR '+ remotepath,open(localpath,'rb'))sleep(0.5)try:
  self.ftp.delete(remotepath)
 except:
  pass
 # del file when uploaded this file
 # os.remove(localpath)
 # sleep(1)

 def __filetype(self, src):if os.path.isfile(src):
  index = src.rfind('\')if index ==-1:
  index = src.rfind('/')return _XFER_FILE, src[index +1:]
 elif os.path.isdir(src):return _XFER_DIR,''

 def upload(self, src):
 filetype, filename = self.__filetype(src)
 self.initEnv()if filetype == _XFER_DIR:
  self.srcDir = src
  self.uploadDir(self.srcDir)
 elif filetype == _XFER_FILE:
  self.uploadFile(src, filename)
 self.clearEnv()if __name__ =='__main__':
 srcDir = r'C:\Users\Administrator\Downloads\FTP\smp'
 transmitter =Transmitter()
 transmitter.setFtpParams('10.44.0.2','admin','123123')while True:
 transmitter.upload(srcDir)sleep(4)

The above is the whole content of this article, I hope it will be helpful to everyone's study.

Recommended Posts

Python implements FTP to upload files in a loop
How to delete files and directories in python
How to write a confession program in python
How to create a Python virtual environment in Ubuntu 14.04
What are the ways to open files in python
Python implements a guessing game
How Python implements FTP function
3 ways to encrypt Python files
How to find the area of a circle in python
How to wrap in python code
Python implements a universal web framework
Python implements 126 mailboxes to send mail
How to omit parentheses in Python
How to write classes in python
How to filter numbers in python
How to read Excel in Python
Python implements ftp file transfer function
How to write return in python
How to clear variables in python
How to use SQLite in Python
A practical guide to Python file handling
Python implements QQ mailbox to send mail
How to make a globe with Python
How to use and and or in Python
How to introduce third-party modules in Python
How to represent null values in python
A quick introduction to Python regular expressions
How to write win programs in python
Write a Qixi confession artifact in Python
How to install third-party modules in Python
How to custom catch errors in python
How to write try statement in python
How to define private attributes in Python
How to understand global variables in Python
How to view installed modules in python
How to open python in different systems
What is a sequence table in Python
Is a number in python a variable type
Python example method to open music files
Is there a helper function in python
How to add background music in python
How to represent relative path in python
How to use the round function in python
3 ways to create a network bridge in RHEL/CentOS 8
How to program based on interfaces in Python
How to install python in ubuntu server environment
An article to understand the yield in Python
Python implements the shuffling of the cards in Doudizhu
Install Python3 environment in a brand new Ubuntu
How to use code running assistant in python
python-Use python to write a small shopping program
Python implements a simple business card management system
Teach you how to write games in python
How to install the downloaded module in python
One article to get regular expressions in Python
The best way to judge the type in Python
How to read and write files with Python
How does Python store data to json files
How to perform continuous multiplication calculation in python