最近、Python 用の仮想ファイル システム モジュール (http://packages.python.org/fs/) を調べたところ、適切に使用する方法について簡単な質問がありました。
次の行を使用して、FTP 仮想ファイル システムを作成しました。
from fs.ftpfs import FTPFS
FTP = FTPFS(host='127.0.0.1', user='test1', passwd='test1', acct='', timeout=60, port=21, dircache=True)
シンプルですよね?
ここで私の質問は、このファイル システム内で別の python スクリプトを読み取るにはどうすればよいかということです。たとえば、私は PyWebDav を使用しており、既定のディレクトリは "C:\WebDir" に設定されています。代わりに、作成したばかりの仮想ファイル システム内を検索するように設定するにはどうすればよいですか?
どんな助けでも大歓迎です、ありがとう!
編集:
これをpyWebDavの「ディレクトリ」にしようとしています:
from fs.ftpfs import FTPFS
ftpServer = FTPFS(host='127.0.0.1', user='test1', passwd='test1', acct='', timeout=60, port=21, dircache=True)
ftpServer = ftpServer.listdir(path='./', wildcard=None, full=True, absolute=True, dirs_only=False, files_only=False)
directory = ftpServer
実行した直後に、次のエラーが発生します。
Traceback (most recent call last):
File "C:\Users\Dustin\Documents\ftpmirror\test.py", line 4, in <module>
server.run()
File "C:\Python27\lib\site-packages\pywebdav-0.9.4.1-py2.7.egg\DAVServer\server.py", line 369, in run
handler=handler)
File "C:\Python27\lib\site-packages\pywebdav-0.9.4.1-py2.7.egg\DAVServer\server.py", line 75, in runserver
if not os.path.isdir(directory):
File "C:\Python27\lib\genericpath.py", line 41, in isdir
st = os.stat(s)
TypeError: coercing to Unicode: need string or buffer, list found
簡単にするために、仮想ファイルシステムの使用方法の例を示したいと思いました。再度、感謝します!