2010-08-11 84 views
2

我試圖使用paramiko通過SFTP獲取文件。 它連接,我可以列出目錄,它甚至下載第一兆字節左右的文件,但它只是掛起。沒有例外,沒有錯誤,什麼都沒有。它只是無限期地掛在那裏。paramiko SFTP掛起獲取

這裏是我的工作代碼:

import paramiko 
t = paramiko.Transport(host) 
t.connect(username=uname, password=passwd) 
f = paramiko.SFTPClient.from_transport(t) 
print f.listdir() 
f.get(fname, fname) #it hangs on this line :\ 

我到主機中的問題,但沒有shell訪問SFTP訪問。 主機包含一個需要定期抓取並在Python腳本中處理的文件。

這個問題,或者在Python中SFTP替代解決方案的任何幫助是極大的讚賞:)

回答

1

我建議你火了Wireshark的客戶,看看發生了什麼在協議層。您將無法讀取數據包中的數據,因爲數據包將被加密,但是您將看到TCP/IP級別發生了什麼,這可能會提供一些線索。

+0

感謝您的意見。我建立了Wireshark(不知道靈越是否已經強迫改變名字),並且在我的程序實際上正在下載內容的時間內運行了一次捕獲。但是,恐怕我對低級別的ssh和tcp不夠熟練,無法理解它。雖然似乎沒有任何錯誤,但它似乎只是停止! – Ulfur 2010-08-11 19:05:48

+0

您可以將捕獲文件上傳到服務器,在那裏我們可以下載它進行檢查? – 2010-08-11 20:26:32

+0

你在這裏:http://drop.io/ulfur_dump 希望它有幫助,我完全被這個問題困住:\ – Ulfur 2010-08-11 21:23:28