最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python使用sftp實現(xiàn)上傳和下載功能(實例代碼)

 更新時間:2017年03月14日 10:01:21   作者:tianpy5  
在Python中可以使用paramiko模塊中的sftp登陸遠(yuǎn)程主機,實現(xiàn)上傳和下載功能。接下來通過本文給大家介紹Python使用sftp實現(xiàn)上傳和下載功能,需要的朋友參考下

在Python中可以使用paramiko模塊中的sftp登陸遠(yuǎn)程主機,實現(xiàn)上傳和下載功能。

1.功能實現(xiàn)

根據(jù)輸入?yún)?shù)判斷是文件還是目錄,進(jìn)行上傳和下載

本地參數(shù)local需要與遠(yuǎn)程參數(shù)remote類型一致,文件以文件名結(jié)尾,目錄以\結(jié)尾

上傳和下載的本地和遠(yuǎn)程目錄需要存在

異常捕獲

2.代碼實現(xiàn)

#!/usr/bin/python
# coding=utf-8
import paramiko
import os
def sftp_upload(host,port,username,password,local,remote):
  sf = paramiko.Transport((host,port))
  sf.connect(username = username,password = password)
  sftp = paramiko.SFTPClient.from_transport(sf)
  try:
    if os.path.isdir(local):#判斷本地參數(shù)是目錄還是文件
      for f in os.listdir(local):#遍歷本地目錄
        sftp.put(os.path.join(local+f),os.path.join(remote+f))#上傳目錄中的文件
    else:
      sftp.put(local,remote)#上傳文件
  except Exception,e:
    print('upload exception:',e)
  sf.close()
def sftp_download(host,port,username,password,local,remote):
  sf = paramiko.Transport((host,port))
  sf.connect(username = username,password = password)
  sftp = paramiko.SFTPClient.from_transport(sf)
  try:
    if os.path.isdir(local):#判斷本地參數(shù)是目錄還是文件
      for f in sftp.listdir(remote):#遍歷遠(yuǎn)程目錄
         sftp.get(os.path.join(remote+f),os.path.join(local+f))#下載目錄中文件
    else:
      sftp.get(remote,local)#下載文件
  except Exception,e:
    print('download exception:',e)
  sf.close()
if __name__ == '__main__':
  host = '192.168.1.2'#主機
  port = 22 #端口
  username = 'root' #用戶名
  password = '123456' #密碼
  local = 'F:\\sftptest\\'#本地文件或目錄,與遠(yuǎn)程一致,當(dāng)前為windows目錄格式,window目錄中間需要使用雙斜線
  remote = '/opt/tianpy5/python/test/'#遠(yuǎn)程文件或目錄,與本地一致,當(dāng)前為linux目錄格式
  sftp_upload(host,port,username,password,local,remote)#上傳
  #sftp_download(host,port,username,password,local,remote)#下載

3.總結(jié)

以上代碼實現(xiàn)了文件和目錄的上傳和下載,可以單獨上傳和下載文件,也可以批量上傳和下載目錄中的文件,基本實現(xiàn)了所要的功能,但是針對目錄不存在的情況,以及上傳和下載到多臺主機上的情況,還有待完善。

相關(guān)文章

  • 昨晚我用python幫隔壁小姐姐P證件照然后發(fā)現(xiàn)

    昨晚我用python幫隔壁小姐姐P證件照然后發(fā)現(xiàn)

    大家好,我是Lex 喜歡欺負(fù)超人那個Lex 建議大家收藏哦,以后幫小姐姐P自拍,證件照,調(diào)尺寸,背景,摳圖,直接10行代碼搞定,瞬間高大上
    2021-08-08
  • Python SQLite3數(shù)據(jù)庫操作類分享

    Python SQLite3數(shù)據(jù)庫操作類分享

    這篇文章主要介紹了Python SQLite3數(shù)據(jù)庫操作類分享,需要的朋友可以參考下
    2014-06-06
  • Python 詳解基本語法_函數(shù)_返回值

    Python 詳解基本語法_函數(shù)_返回值

    這篇文章主要介紹了Python 詳解基本語法_函數(shù)_返回值的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • Python字符串格式化format()方法運用實例

    Python字符串格式化format()方法運用實例

    這篇文章主要給大家介紹了關(guān)于Python字符串格式化format()方法運用實例的相關(guān)資料,字符串格式化是Python編程中十分常用的部分,它可以幫助我們將更具可讀性的數(shù)據(jù)輸出到控制臺或?qū)懭胛募?需要的朋友可以參考下
    2023-08-08
  • Python HTML解析器BeautifulSoup用法實例詳解【爬蟲解析器】

    Python HTML解析器BeautifulSoup用法實例詳解【爬蟲解析器】

    這篇文章主要介紹了Python HTML解析器BeautifulSoup用法,結(jié)合實例形式詳細(xì)分析了第三方庫BeautifulSoup實現(xiàn)的爬蟲解析器功能具體操作技巧,需要的朋友可以參考下
    2019-04-04
  • 一文詳細(xì)介紹numpy在python中的用法

    一文詳細(xì)介紹numpy在python中的用法

    這篇文章主要介紹了numpy在python中的用法,NumPy是Python科學(xué)計算庫,主要用于處理大型多維數(shù)組和矩陣運算,它提供了多種函數(shù)進(jìn)行數(shù)組操作,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-01-01
  • 使用Python繪制實時的動態(tài)折線圖

    使用Python繪制實時的動態(tài)折線圖

    這篇文章主要為大家詳細(xì)介紹了如何使用Python繪制實時的動態(tài)折線圖,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-11-11
  • win7 x64系統(tǒng)中安裝Scrapy的方法

    win7 x64系統(tǒng)中安裝Scrapy的方法

    這篇文章主要介紹了win7 x64系統(tǒng)中安裝Scrapy的方法,圖文并茂一步步的教你如何安裝Scrapy,需要的朋友可以參考下
    2018-11-11
  • python淺談一下線程間通信之隊列

    python淺談一下線程間通信之隊列

    本篇文章介紹了為什么需要線程間通信,以及通信方式有哪些,最后每種通信方式都舉了一個例子,最常用的還是共享變量的方式來進(jìn)行線程間通信。感興趣的朋友可以閱讀本文
    2023-04-04
  • python之DataFrame實現(xiàn)excel合并單元格

    python之DataFrame實現(xiàn)excel合并單元格

    這篇文章主要為大家詳細(xì)介紹了python之DataFrame實現(xiàn)excel合并單元格,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04

最新評論

车致| 连云港市| 阜阳市| 沽源县| 宁化县| 青龙| 新竹县| 宜黄县| 萝北县| 五河县| 青阳县| 西青区| 西青区| 萝北县| 吴桥县| 宾川县| 武山县| 临湘市| 滨海县| 合江县| 临沂市| 邹城市| 南溪县| 芒康县| 平遥县| 泗洪县| 黔东| 芜湖县| 皋兰县| 永济市| 新疆| 高青县| 新巴尔虎左旗| 会东县| 神木县| 花莲县| 凌云县| 贡觉县| 万州区| 华亭县| 襄垣县|