Python FTP
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
] [
Trackback(0)
]
開始行:
-http://hinaclegear.bitbucket.org/pydoc/library/ftplib.html
--なんか FTP.nlst() が 3.3 で廃止とか書いてあるけど・・・...
--代わりに使えというメソッドが 3.2 に無いし
-ftpexam.py
#code(java){{
from ftplib import FTP
# FTPS の場合
# ftp = FTP_TLS()
ftp = FTP()
# デバックログを出力 (0:なし/1:コマンド /2:詳細)
ftp.set_debuglevel(1)
# port のデフォルト値は、21
# timeout のデフォルト値は -999(無制限) 単位は秒
ftp.connect(host='172.16.227.32', port=21, timeout=600)
ftp.login(user='anonymous', passwd="foo@bar.com")
# PASV モード
ftp.set_pasv(True)
# PWD コマンド
print('□□□□□ PWD:' + ftp.pwd())
# NLST コマンド
fileList = ftp.nlst();
print('□□□□□ NLST:' + str(fileList))
# ファイルダウンロード(binary)
ftp.retrbinary("RETR sample.txt", open('sample.txt', 'wb'...
print('□□□□□ DOWNLOAD COMPLETE')
# CWD
ftp.cwd('Internal')
print('□□□□□ CWD')
# ファイルアップロード(binary)
fp = open('secret.txt','rb')
ftp.storbinary("STOR update.txt", fp)
fp.close()
print('□□□□□ UPLOAD COMPLETE')
ftp.quit()
print('□□□□□ QUIT')
}}
-アクセス結果 (Mac から VM 上の Window7)
*resp* '220 Microsoft FTP Service'
*cmd* 'USER anonymous'
*resp* '331 Anonymous access allowed, send identity (e-m...
*cmd* 'PASS ***********'
*resp* '230 User logged in.'
*cmd* 'PWD'
*resp* '257 "/" is current directory.'
□□□□□ PWD:/
*cmd* 'TYPE A'
*resp* '200 Type set to A.'
*cmd* 'PASV'
*resp* '227 Entering Passive Mode (172,16,227,32,215,87).'
*cmd* 'NLST'
*resp* '125 Data connection already open; Transfer start...
*resp* '226 Transfer complete.'
□□□□□ NLST:['Internal', 'sample.txt']
*cmd* 'TYPE I'
*resp* '200 Type set to I.'
*cmd* 'PASV'
*resp* '227 Entering Passive Mode (172,16,227,32,215,89).'
*cmd* 'RETR sample.txt'
*resp* '125 Data connection already open; Transfer start...
*resp* '226 Transfer complete.'
□□□□□ DOWNLOAD COMPLETE
*cmd* 'CWD Internal'
*resp* '250 CWD command successful.'
□□□□□ CWD
*cmd* 'TYPE I'
*resp* '200 Type set to I.'
*cmd* 'PASV'
*resp* '227 Entering Passive Mode (172,16,227,32,215,91).'
*cmd* 'STOR update.txt'
*resp* '125 Data connection already open; Transfer start...
*resp* '226 Transfer complete.'
□□□□□ UPLOAD COMPLETE
*cmd* 'QUIT'
*resp* '221 Goodbye.'
□□□□□ QUIT
-本番アプリではエラー処理を忘れずに
try:
except Exception:
でいいかな。細かくエラーハンドリングしてもどうにもならんし
----
[[Python]]
終了行:
-http://hinaclegear.bitbucket.org/pydoc/library/ftplib.html
--なんか FTP.nlst() が 3.3 で廃止とか書いてあるけど・・・...
--代わりに使えというメソッドが 3.2 に無いし
-ftpexam.py
#code(java){{
from ftplib import FTP
# FTPS の場合
# ftp = FTP_TLS()
ftp = FTP()
# デバックログを出力 (0:なし/1:コマンド /2:詳細)
ftp.set_debuglevel(1)
# port のデフォルト値は、21
# timeout のデフォルト値は -999(無制限) 単位は秒
ftp.connect(host='172.16.227.32', port=21, timeout=600)
ftp.login(user='anonymous', passwd="foo@bar.com")
# PASV モード
ftp.set_pasv(True)
# PWD コマンド
print('□□□□□ PWD:' + ftp.pwd())
# NLST コマンド
fileList = ftp.nlst();
print('□□□□□ NLST:' + str(fileList))
# ファイルダウンロード(binary)
ftp.retrbinary("RETR sample.txt", open('sample.txt', 'wb'...
print('□□□□□ DOWNLOAD COMPLETE')
# CWD
ftp.cwd('Internal')
print('□□□□□ CWD')
# ファイルアップロード(binary)
fp = open('secret.txt','rb')
ftp.storbinary("STOR update.txt", fp)
fp.close()
print('□□□□□ UPLOAD COMPLETE')
ftp.quit()
print('□□□□□ QUIT')
}}
-アクセス結果 (Mac から VM 上の Window7)
*resp* '220 Microsoft FTP Service'
*cmd* 'USER anonymous'
*resp* '331 Anonymous access allowed, send identity (e-m...
*cmd* 'PASS ***********'
*resp* '230 User logged in.'
*cmd* 'PWD'
*resp* '257 "/" is current directory.'
□□□□□ PWD:/
*cmd* 'TYPE A'
*resp* '200 Type set to A.'
*cmd* 'PASV'
*resp* '227 Entering Passive Mode (172,16,227,32,215,87).'
*cmd* 'NLST'
*resp* '125 Data connection already open; Transfer start...
*resp* '226 Transfer complete.'
□□□□□ NLST:['Internal', 'sample.txt']
*cmd* 'TYPE I'
*resp* '200 Type set to I.'
*cmd* 'PASV'
*resp* '227 Entering Passive Mode (172,16,227,32,215,89).'
*cmd* 'RETR sample.txt'
*resp* '125 Data connection already open; Transfer start...
*resp* '226 Transfer complete.'
□□□□□ DOWNLOAD COMPLETE
*cmd* 'CWD Internal'
*resp* '250 CWD command successful.'
□□□□□ CWD
*cmd* 'TYPE I'
*resp* '200 Type set to I.'
*cmd* 'PASV'
*resp* '227 Entering Passive Mode (172,16,227,32,215,91).'
*cmd* 'STOR update.txt'
*resp* '125 Data connection already open; Transfer start...
*resp* '226 Transfer complete.'
□□□□□ UPLOAD COMPLETE
*cmd* 'QUIT'
*resp* '221 Goodbye.'
□□□□□ QUIT
-本番アプリではエラー処理を忘れずに
try:
except Exception:
でいいかな。細かくエラーハンドリングしてもどうにもならんし
----
[[Python]]
ページ名:
ISBN10
ISBN13
9784061426061