成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > Python使用sftp實現(xiàn)傳文件夾和文件

Python使用sftp實現(xiàn)傳文件夾和文件

熱門標簽:南京銷售外呼系統(tǒng)軟件 蓋州市地圖標注 地圖標注微信發(fā)送位置不顯示 315電話機器人廣告 地圖制圖標注位置改變是移位嗎 上海機器人外呼系統(tǒng)哪家好 地圖標注的意義點 房產電銷外呼系統(tǒng) 浙江電銷卡外呼系統(tǒng)好用嗎

利用python的sftp實現(xiàn)文件上傳,可以是文件,也可以是文件夾。

版本Python2.7.13 應該不用pip安裝更多的插件,都是自帶的

不多說 上代碼

# -*- coding:utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import paramiko
import os

_XFER_FILE = 'FILE'
_XFER_DIR  = 'DIR'

class MainWindow(object):
    # 構造方法
    def __init__(self, arg):
        # 超類調用
        super(MainWindow, self).__init__()

        # 賦值參數[字典]
        # 參數格式 arg = {'ip':'填ip','user':'用戶名','password':'密碼','port':22}
        self.arg = arg
        # 賦值參數[FTP]
        self.sftp = None

        # 調試日志
        print self.arg


    # 啟動程序
    def startup(self):
        # 連接FTP
        if self.sftp != None:
            print u'您已經成功連接了'
        tmpstr = u'開始連接...用戶名:'+self.arg['user']+u'  密碼:'+self.arg['password']+' IP:'+self.arg['ip']+u' 端口:'+str(self.arg['port'])
        print tmpstr
        try:
            transport = paramiko.Transport((self.arg['ip'], self.arg['port']))
            transport.connect(username=self.arg['user'], password=self.arg['password'])
            self.sftp = paramiko.SFTPClient.from_transport(transport)
            print (u'連接成功 '+self.arg['ip'])
        except Exception as e:
            print u'連接失?。?+str(e)

    # 關閉程序
    def shutdown(self):
        # 關閉FTP
        if self.sftp:
            self.sftp.close() 
            print '### disconnect sftp server: %s!'%self.arg['ip']
            self.sftp = None 

    # 處理上傳
    def upload(self, source, target, replace):
        ### 操作數據
        # 來源路徑
        source = source.replace('\\', '/')
        # 目標路徑
        target = target.replace('\\', '/')


        ### 驗證數據
        if not os.path.exists(source):
            print u'來源資源不存在,請檢查:' + source
            return


        ### 格式數據
        # 格式化目標路徑
        self.__makePath(target)


        ### 處理數據
        # 文件媒體數據(文件類型, 文件名稱)
        filetype, filename = self.__filetype(source)
        # 判斷文件類型
        if filetype == _XFER_DIR:
            # 1.目錄 
            self.uploadDir(source, target, replace)
        elif filetype == _XFER_FILE:
            # 2.文件 
            self.uploadFile(source, filename, replace)


    # 傳送目錄
    def uploadDir(self, source, target, replace):
        ### 驗證數據
        # 判斷目錄存在
        if not os.path.isdir(source):   
            print u'這個函數是用來傳送本地目錄的'
            return

        ### 處理數據
        # 遍歷目錄內容,上傳資源
        for file in os.listdir(source):
            # 資源路徑
            filepath = os.path.join(source, file) 

            # 判斷資源文件類型
            if os.path.isfile(filepath): 
                # 1.文件
                self.uploadFile(filepath, file, replace) 
            elif os.path.isdir(filepath):
                # 2.目錄
                try:
                    self.sftp.chdir(file) 
                except:
                    self.sftp.mkdir(file)
                    self.sftp.chdir(file) 
                self.uploadDir(filepath, file, replace)

        ### 重置數據
        # 返回上一層目錄
        self.sftp.chdir('..') 

    # 傳送文件
    def uploadFile(self, filepath, filename, replace):
        ### 驗證數據
        # 驗證文件類型
        if not os.path.isfile(filepath):
            print u'這個函數是用來傳送單個文件的'
            return
        # 驗證文件存在
        if not os.path.exists(filepath):
            print u'err:本地文件不存在,檢查一下'+filepath
            return
        # 驗證FTP已連接
        if self.sftp == None:
            print u'sftp 還未鏈接'
            return


        ### 處理數據
        # 判斷文件存在是否覆蓋
        if not replace:
            if filename in self.sftp.listdir():
                print u'[*] 這個文件已經存在了,選擇跳過:' + filepath + ' -> ' + self.sftp.getcwd() + '/' + filename
                return
        # 上傳文件
        try:
            self.sftp.put(filepath, filename)
            print u'[+] 上傳成功:' + filepath + ' -> ' + self.sftp.getcwd() + '/' + filename
        except Exception as e:
            print u'[+] 上傳失敗:' + filepath + ' because ' + str(e)


    # 獲得文件媒體數據({文件/目錄, 文件名稱})
    def __filetype(self, source):
        # 判斷文件類型
        if os.path.isfile(source):
            # 1.文件
            index = source.rfind('/')
            return _XFER_FILE, source[index+1:]
        elif os.path.isdir(source):  
            # 2.目錄
            return _XFER_DIR, ''


    # 創(chuàng)建目標路徑
    # 說明: 目標路徑不存在則依次創(chuàng)建路徑目錄
    def __makePath(self, target):
        # 切換根目錄
        self.sftp.chdir('/')

        # 分割目標目錄為目錄單元集合
        data = target.split('/')
        # 進入目標目錄, 目錄不存在則創(chuàng)建
        for item in data:
            try:
                self.sftp.chdir(item) 
                print u'要上傳的目錄已經存在,選擇性進入合并:' + item
            except:
                self.sftp.mkdir(item)
                self.sftp.chdir(item) 
                print u'要上傳的目錄不存在,創(chuàng)建目錄:' + item




if __name__ == '__main__':
    # """
    # 先熟悉一下sftp有哪些用法  sftp.listdir(可以傳參可以為空) 返回當前目錄下清單列表
    # mkdir 創(chuàng)建目錄對應rmdir   sftp.put(本地路徑,遠程要存的文件名) chdir進入子目錄
    # """
    arg = {'ip':'填ip','user':'填用戶名','password':'填密碼','port':22}

    me  = MainWindow(arg)
    me.startup()
    # 要上傳的本地文件夾路徑
    source = r'E:\xampp\backup\mysql\cto'
    # 上傳到哪里 [遠程目錄]
    target = r'/home/www/cto/wp-superdo/backup/db'
    replace = False

    me.upload(source, target, replace)
    me.shutdown()



def main(source, target, replace=False):
    arg = {'ip':填ip,'user':填用戶名,'password':填密碼,'port':22}

    me  = MainWindow(arg)
    me.startup()

    me.upload(source, target, replace)
    me.shutdown()

因為Python2.7對中文的支持不是很好所以如果出現(xiàn)中文錯誤
修改一下 Python27\Lib\site-packages\paramiko\py3compat.py

還有

最后上一下執(zhí)行結果

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:臨汾 陽泉 克拉瑪依 赤峰 日照 雙鴨山 金華 貴州

巨人網絡通訊聲明:本文標題《Python使用sftp實現(xiàn)傳文件夾和文件》,本文關鍵詞  Python,使用,sftp,實現(xiàn),傳,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python使用sftp實現(xiàn)傳文件夾和文件》相關的同類信息!
  • 本頁收集關于Python使用sftp實現(xiàn)傳文件夾和文件的相關信息資訊供網民參考!
  • 推薦文章
    亚洲区小说区图片区| 成年人网站在线观看免费| 国产香蕉尹人视频在线| 一区二区在线看| 国产精品一码二码三码在线| 日韩中文在线字幕| 国产九区一区在线| 国产免费无码一区二区视频| 精品国产一二三区| 天天操夜夜骑| 日韩欧美一区二区三区在线视频| 在线资源免费观看| 如如影视在线观看经典| 亚洲av无码专区在线| www999久久| 久久久综合av| 日本不卡一区二区在线观看| 人人草在线观看| 国产第一亚洲| 欧美亚洲综合另类| 国产一区二区在线观看视频| 在线看片国产福利你懂的| 狠狠色噜噜狠狠| 最好看的2019的中文字幕视频| 成人毛片视频网站| 天堂社区日本电影超碰| 美女露出粉嫩尿囗让男人桶| 日韩精品久久久久久久电影99爱| 青青草免费在线视频观看| 91精产国品一二三产区别沈先生| 国产精品啊啊啊| 高清毛片在线看| 色一区av在线| www视频在线播放| japanese在线播放| 日韩欧美一区二区三区在线视频| 韩国欧美国产一区| jizz性欧美2| 91性高湖久久久久久久久_久久99| 国产午夜精品全部视频在线播放| 亚洲天堂久久| 午夜剧场日韩| 亚洲一区二区三区影院| 欧洲亚洲免费视频| 亚洲欧美国产精品桃花| 国产一级片91| 国产亚洲久一区二区| 三级国产三级在线| 欧美欧美欧美欧美首页| 国产在线传媒| 亚洲第一主播视频| 日韩福利一区二区三区| 99久久视频| 成人福利免费在线观看| 日韩午夜精品| 国产精品蜜臀在线观看| 免费在线观看一区二区三区| 一区二区三区视频网站| 亚洲视频久久| 欧美电影h版| 国产在线资源| 亚洲一级一区| 天堂久久一区| 国产精品对白交换视频| 91精品国产91久久综合桃花| 一区二区三区国产精华| 亚洲毛片欧洲毛片国产一品色| 欧美一区2区三区4区公司二百| 国产成人三级视频| 久久成人在线观看| 久久综合色一综合色88| 91九色成人| 精品一区二区三区免费视频| 伊人成综合网伊人222| 久久久久久久久久久久久国产精品| 成年人网站免费观看| 日韩成人av在线| 99久久精品国产一区二区成人| 天天射综合网视频| 少妇高潮一区二区三区69| 亚洲午夜精品福利| 少妇性l交大片7724com| 精品在线91| www.美色吧.com| 欧美男同视频网| 日本一二三不卡视频| 国产又白又嫩又紧又爽18p| 亚洲国产精品高清久久久| 日本19禁啪啪吃奶大尺度| 久久综合中文字幕| 日韩高清人体午夜| 精品国产成人系列| 男女视频免费网站| 可以免费观看的毛片| 91香蕉视频污在线观看| 一区二区电影在线观看| 色偷偷www8888| 狠狠做六月爱婷婷综合aⅴ| 99re这里都是精品| 亚洲一区 二区 三区| 久久99久久99精品免费看小说| 久久精品一偷一偷国产| 国产成人无码一区二区在线观看| 中文字幕在线日亚洲9| 黑人狂躁日本娇小| 91高清国产| 一级黄色片播放| 亚洲国产精久久久久久久| 国产亚洲制服色| 五月婷婷六月丁香激情| 女人黄色片免费| 精品人妻一区二区三区蜜桃| 图片区乱熟图片区亚洲| 亚洲男人的天堂网站| 日本中文字幕影院| 国产高清免费在线| 91亚洲资源网| 欧美另类bbbxxxxx另类| 手机在线观看av| 高清一区二区三区av| 欧美日韩国产综合久久| 久久电影视频| av激情网站| 国产香蕉在线观看| 嫩草影院永久入口| 久久精品日产第一区二区三区| 97色在线观看| 一区二区成人| av在线无限看| 日韩成人综合| 精品国产乱码久久久久久蜜坠欲下| 91超碰这里只有精品国产| 狂野欧美性猛交xxxxx视频| 不卡高清视频专区| 国产片乱18免费| 亚洲美女少妇撒尿| 日韩欧美三级视频| 91成人福利在线观看| 在线观看黄网址| 国产成人精品无码免费看夜聊软件| 久久在线视频免费观看| 亚洲猫色日本管| av毛片在线免费看| 日韩成人免费在线视频| 天使と恶魔の榨精在线播放| 美女av一区二区三区| а天堂8中文最新版在线官网| 久久视频在线观看免费| 黄色正能量网站| mm131亚洲精品| 一区二区三区波多野结衣在线观看| 国产一区二区三区视频在线播放| 欧美性受xxxx黑人xyx| 91精品久久久久久粉嫩| 国产精品16p| 成人一区二区三区四区| 福利视频导航一区| 欧美啪啪小视频| 国产一区二区三区在线播放免费观看| 蜜桃视频涩涩| 夜色福利刺激| 国内精品久久久久久中文字幕| www.日本久久| 酒色婷婷桃色成人免费av网| 欧美一级久久久久久久大片| 日韩欧美一中文字暮专区| 国产精品理论片| 亚洲色偷精品一区二区三区| 中文字幕在线永久在线视频| 久草视频在线看| 久久嫩草精品久久久精品| 91九色蝌蚪| 人妻少妇精品视频一区二区三区| 成人羞羞动漫| 亚洲免费成人av电影| 视频在线观看成人| 国产成人午夜精品影院观看视频| 美女黄色免费看| 最新国产热播激情视频| 亚洲小视频在线观看| 免费看黄色aaaaaa 片| 英国三级经典在线观看| 精品一区二区av| 免费在线一区观看| 日韩久久精品视频| 国产天堂素人系列在线视频| 亚洲精品一区二三区| 国产精品一卡二卡在线观看| 亚洲一区不卡在线| 欧美探花视频资源| 蜜桃极品自拍av| 成人免费网址在线| 欧美成人三级在线观看| 国内精品露脸在线视频播放| 国产日韩精品视频| **亚洲第一综合导航网站| 亚洲一二三不卡| 久久久久久com| 中文字幕少妇| 欧美精品久久一区二区三区| 日韩欧美不卡一区| 国产精品无码一区二区三区| 亚洲国产欧美日韩| 色偷偷噜噜噜亚洲男人的天堂| 国产婷婷色一区二区三区四区| 欧美精品福利在线| 一区二区三区www污污污网站| 中文字幕一区二区三区四区| 色女孩综合网| 国产寡妇树林野战在线播放| 亚洲成人黄色av| 涩涩视频在线观看下载| 里番精品3d一二三区| 欧美激情网站在线观看| 欧美国产欧美亚州国产日韩mv天天看完整| 亚洲在线成人精品| 国产精品亚洲欧美日韩一区在线| 91精品国产91久久| 久久伦理中文字幕| 成人三级视频| а√天堂资源官网在线资源| 国产精品国产亚洲伊人久久| 成人久久久精品乱码一区二区三区| 一区二区三区免费高清视频| 免费一级黄色录像| 黄网站在线观看高清免费| 日韩精品亚洲一区二区三区免费| 日韩av三级在线观看| 亚洲精品77777| 超碰中文字幕在线| 亚洲成年人专区| 日韩欧美高清在线| 最新天堂资源在线资源| 成人午夜又粗又硬又大| 在线免费电影网| 91精品国产综合久久蜜臀| 菠萝蜜视频国产在线播放| 黄网站app在线观看大全免费视频| 青青草视频播放| 丁香五六月婷婷久久激情| zjzjzjzjzj亚洲女人| 天天摸天天操天天爽| 深夜福利免费在线观看| 国产精品69久久久久水密桃| 国产精品18久久久久久久久| www黄com| 国产一区二区三区在线| 国产一区二中文字幕在线看| 国产精品巨作av| 天堂网avav| 中文字字幕一区二区三区四区五区| 欧美一区二区在线观看| 国产精品一区在线播放| 成人eeuss影院在线观看| 亚洲美女www午夜| 日本欧美视频在线观看| 久久97超碰色| 国产精品亚洲综合在线观看| 成人免费在线一区二区三区| 日本精品人妻无码77777| 7777精品伊人久久久大香线蕉的| www.四虎在线| 中文字幕一区二区中文字幕| 成人动漫视频在线观看完整版| 又爽又大又黄a级毛片在线视频| 亚洲免费观看高清完整版在线观看熊| 日本香蕉视频在线观看| 视频在线在亚洲| 久久婷婷五月综合色国产香蕉| 国产91精品网站| 97视频国产在线| 九九热r在线视频精品| 成人在线视频免费观看| 视频一区二区三区不卡| 亚洲一区黄色| 午夜影院欧美| 国产精品观看| 精品粉嫩超白一线天av| 超碰免费在线公开| а√天堂中文资源在线bt| 亚洲精品国产动漫| 午夜国产在线观看| 青青久久aⅴ北条麻妃| 亚洲最大成人综合网| 国产精品原创巨作av| 亚洲成人一级片| 欧美激情久久久久久久| 9人人澡人人爽人人精品| 中文一区一区三区免费| 高清一区二区中文字幕| av大片在线观看| 免费在线视频一区二区| 亚洲欧洲精品一区二区三区| 色婷婷综合网| 特黄特色免费视频| 国产伊人精品| 天天堂资源网在线观看免费视频| www.三区| www.嫩草免费在线观看| 97久久久免费福利网址| 中文字幕在线看高清电影| 精品国产99国产精品| 最新av在线| 精品精品国产高清a毛片牛牛| 国产精品二区一区二区aⅴ| 国产一区二区视频在线观看| 久久大香伊蕉在人线观看热2| 久久久国产精品x99av| 中文字幕日本最新乱码视频| 亚洲精品免费一二三区| 波多野结衣爱爱视频| 一级特黄曰皮片视频| 国产精品有限公司| 日韩欧美在线免费| 久久五月精品中文字幕| 亚洲人成电影在在线观看网色| 久久综合久久综合久久综合| 东京久久高清| 水蜜桃久久夜色精品一区的特点| 欧美日韩中文字幕| 女性隐私黄www网站视频| 亚洲最大黄网| 中文日韩在线| 另类小说一区二区三区| 国产黄色免费电影| 麻豆国产在线视频| 国产精品视频久久一区| 色婷婷免费视频|