私はグーグルで調べましたが、1つのファイルをアップロードする方法しか見つかりませんでした...そして、ローカルディレクトリからリモートftpディレクトリにすべてのファイルをアップロードしようとしています。これを達成する方法はありますか?
13595 次
3 に答える
13
ループで?
edit : 通常、ファイルのみをアップロードする場合は次のようになります。
import os
for root, dirs, files in os.walk('path/to/local/dir'):
for fname in files:
full_fname = os.path.join(root, fname)
ftp.storbinary('STOR remote/dir' + fname, open(full_fname, 'rb'))
このようにファイル名を保存するだけの場合は、明らかに名前の衝突に注意する必要があります。
于 2009-07-10T15:48:55.483 に答える
-3
FTP バッチ ファイルを作成します (転送する必要があるファイルのリストを含む)。python を使用して「-s」オプションを指定して ftp.exe を実行し、ファイルのリストを渡します。
これは厄介ですが、どうやら FTPlib は STOR コマンドで複数のファイルを受け入れることができません。
サンプルの ftp バッチ ファイルを次に示します。
*
OPEN inetxxx
myuser mypasswd
binary
prompt off
cd ~/my_reg/cronjobs/k_load/incoming
mput *.csv
bye
上記の内容が「abc.ftp」というファイルにある場合、私のftpコマンドは次のようになります
ftp -s abc.ftp
それが役立つことを願っています。
于 2009-07-10T16:49:48.340 に答える