程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python 拉取遠程服務器資源到本地

編輯:Python

因為功能需要,需要從遠端服務器拉取文件資源到本地,寫了一個簡單腳本. 功能沒有很復雜就不寫相關解釋了

import paramiko
def download_from_remote(remote_path, local_path):
# 服務器連接信息
host_ip = 'xxx.xx.xx.xxx'
port = 22
user_name = 'root'
password = 'root'
try:
t = paramiko.Transport((host_ip, port))
t.connect(username=user_name, password=password) # 登錄遠程服務器
sftp = paramiko.SFTPClient.from_transport(t) # sftp傳輸協議
for file_name in sftp.listdir(remote_path):
if file_name.endswith('.xlsx'):
src = remote_path + file_name
des = local_path + file_name
sftp.get(src, des) # 下載文件
t.close()
except:
print(IOError)
remote_scp(host_ip, user_name, password)
if __name__ == '__main__':
remote_path = '/data/app/test/'
local_path = '/data/app//resources/'
#判斷文件是否存在
createDirIfNotExists(local_path)
# 下載遠端文件到當前服務器
download_from_remote(remote_path, local_path)

需要注意的地方是 sftp.get(src, des) 參數的路徑一定要是 ‘文件地址 + 文件名’ (/data/app/test/aa.xlsx) 的格式 ; 否則會出現一個 os的異常,具體這裡不在展示了


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved