我正在嘗試使用Python的ftplib讀取文件而無需編寫它們。大致相當於:是否可以在不使用Python編寫FTP文件的情況下閱讀FTP文件?
def get_page(url):
try:
return urllib.urlopen(url).read()
except:
return ""
但使用FTP。
我想:
def get_page(path):
try:
ftp = FTP('ftp.site.com', 'anonymous', 'passwd')
return ftp.retrbinary('RETR '+path, open('page').read())
except:
return ''
但這不起作用。文檔中的唯一示例涉及使用ftp.retrbinary('RETR README', open('README', 'wb').write)
格式寫入文件。是否可以在不先寫入的情況下讀取ftp文件?
術語問題:你的問題的答案是你的問題,因爲「下載」的意思是「從服務器傳輸」,而不是「保存到磁盤」。您提供的'urllib'示例_does_下載文件;它只是不保存到磁盤。 – senderle
聽起來像。可以在不打開的情況下閱讀一本書嗎? FTP僅用於傳輸文件。所以ftp協議沒有涉及讀取,運行或打開文件的操作。 另一個stackoverlow主題對java提出了同樣的問題。 FTP將文件作爲比特流發送。所以可以在下載過程中讀取和處理文件。 http://stackoverflow.com/questions/7690320/how-to-read-files-from-ftp-without-download-them – Erik
是的,我意識到我張貼它後表達了很差......我會編輯現在。 – aensm