python控制ftp理論篇

python中的ftplib模塊提供了用於訪問FTP的函數,使用ftplib模塊可以在python腳本中訪問ftp,完成文件的上傳下載

ftplib模塊簡介

創建一個ftp連接對象。其原型如下:

FTP(host, user, passwd, acct)
  • host 服務器主機
  • user 服務器用戶名
  • passwd 服務器用戶的密碼
  • acct 默認爲空,一般不做設置

下面再介紹一些方法供更多的操作

connect(host,port)

host 連接的ftp服務器
port 服務器是端口

login(user,passwd,acct)

  • user 登錄ftp服務器所使用的用戶名
  • passwd 登錄fto服務器所使用的密碼
  • acct 可選參數,默認爲空

另外有趣的是:

歡迎和中斷文件傳輸方法

  • getwelcome 可以獲得ftp服務器的歡迎信息
  • abort 中斷文件傳輸

sendcmd(command)與voidcmd(command)

可以向ftp服務器發送命令

retrbinary與retrlines方法下載文件

前者從服務器下載二進制形式傳輸文件,而retrlines方法使用ascii形式傳輸文件。

  • retrbinary(command, callback, maxblocksize, rest)
  • retrlines(command,callback)
    對於retribinary,其參數含義如下:
  • command 傳輸命令,由“RETR+文件名”組成(之間有空格)
  • callback 傳輸回調函數
  • maxblocksize 設置每次傳輸的最大字節數,可選參數
  • rest 設置文件的續傳位置,可選參數

對於retrlines,其參數含義如下:

  • command 傳輸命令
  • callback 傳輸回調函數

storbinary與storlines方法上傳文件

前者向服務器上傳二進制文件,後者上傳ascii形式傳輸文件

storbinary(command,file.blocksize)
storlines(command,file)

其中前者參數:

  • command 傳輸命令,由“STOR+文件名” 組成(之間有空格)
  • file 本地文件句柄
  • blocksize 設置每次讀取文件的最大字節數,可選參數

後者storlines參數含義:

  • command 傳輸命令
  • file 本地文件句柄

set_pasv(boolean)傳輸模式

set_pasv(boolean)

其中如果參數boolean爲True,則爲被動模式;如果爲False,則爲主動模式

dir方法查看當前目錄內容列表

使用FTP對象的dir方法可以獲取當前目錄中的內容列表

rename修改服務器中的文件名

rename(fromname,toname)

其參數含義如下:

  • fromname 原來文件名
  • toname 重命名後的文件

delete刪除服務器中的文件

delete(filename)

cwd更改當前目錄

cwd(pathname)

mkd創建ftp目錄

mkd(pathname)

pwd獲得當前目錄

pwd()

rmd刪除目錄

rmd(dirname)

size獲得文件的大小

size(filename)

quit與close關閉ftp服務器連接

close()
quit()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章