1. 程式人生 > 程式設計 >Python呼叫scp向伺服器上傳檔案示例

Python呼叫scp向伺服器上傳檔案示例

最近做的專案中有一個小功能:在python中呼叫scp命令

使用ssh登入,然後將指定目錄中的圖片上傳到伺服器指定目錄

網上搜了很多方法都沒用,最後終於碰到一個可以成功上傳的,特此記錄

import paramiko # 用於呼叫scp命令
from scp import SCPClient
 
 
# 將指定目錄的圖片檔案上傳到伺服器指定目錄
# remote_path遠端伺服器目錄
# file_path本地資料夾路徑
# img_name是file_path本地資料夾路徑下面的檔名稱
def upload_img(img_name,remote_path="/var/www/html/public/thinkfont/competitor/data/font/oppo/preview_pic",file_path="D:\PythonProject\img"):
 # img_name示例:07670ff76fc14ab496b0dd411a33ac95-6.webp
 host = "***.***.***.***" #伺服器ip地址
 port = 22 # 埠號
 username = "duanyuanjin" # ssh 使用者名稱
 password = "duanVlife" # 密碼
 
 ssh_client = paramiko.SSHClient()
 ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy)
 ssh_client.connect(host,port,username,password)
 scpclient = SCPClient(ssh_client.get_transport(),socket_timeout=15.0)
 local_path = file_path + "\\" + img_name
 try:
  scpclient.put(local_path,remote_path)
 except FileNotFoundError as e:
  print(e)
  print("系統找不到指定檔案" + local_path)
 else:
  print("檔案上傳成功")
 ssh_client.close()

以上這篇Python呼叫scp向伺服器上傳檔案示例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。