這篇我們會教學幾件事,連線, 列出清單,抓取資料,剩下的其實就請自己看文件吧!
首先我們一樣要先安裝套件
pip install pysftp
接著進入正題:
這樣基本的連線就算完成了,不過需要注意的一件事 因為我們 hostkeys 選擇 None 所以在連線時他會噴出很大一份警告
不過這不影響使用
接著我們如果要顯示目錄中的內容:
這樣就可以了
接著就是下載了,下載也只是告訴他遠端路徑和本地路徑即可
sftp.get 的第一個參數就是遠端的檔名, 第二個參數就是本地端的路徑和檔名
這樣就可以摟
首先我們一樣要先安裝套件
pip install pysftp
接著進入正題:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import pysftp
sHostName = '連線目標 host'
sUserName = '帳號'
sPassWord = '密碼'
sPort = '通訊 port'
cnopts = pysftp.CnOpts(knownhosts='known_hosts')
cnopts.hostkeys = None
with pysftp.Connection(sHostName, username=sUserName, password=sPassWord,port=22, cnopts=cnopts) as sftp:
# -*- coding: UTF-8 -*-
import pysftp
sHostName = '連線目標 host'
sUserName = '帳號'
sPassWord = '密碼'
sPort = '通訊 port'
cnopts = pysftp.CnOpts(knownhosts='known_hosts')
cnopts.hostkeys = None
with pysftp.Connection(sHostName, username=sUserName, password=sPassWord,port=22, cnopts=cnopts) as sftp:
這樣基本的連線就算完成了,不過需要注意的一件事 因為我們 hostkeys 選擇 None 所以在連線時他會噴出很大一份警告
不過這不影響使用
接著我們如果要顯示目錄中的內容:
# 取得目錄內容
directory = sftp.listdir_attr()
# 印出結果
for attr in directory:
print (attr.filename,attr)
directory = sftp.listdir_attr()
# 印出結果
for attr in directory:
print (attr.filename,attr)
這樣就可以了
接著就是下載了,下載也只是告訴他遠端路徑和本地路徑即可
for attr in directory:
sftp.get(attr.filename,'./local_dir/'+attr.filename)
sftp.get(attr.filename,'./local_dir/'+attr.filename)
sftp.get 的第一個參數就是遠端的檔名, 第二個參數就是本地端的路徑和檔名
這樣就可以摟
留言
張貼留言