here an example
In [22]: host=ftputil.FTPHost('ftp.microsoft.com','anonymous','test@test.com')
In [23]: lista=host.listdir('/deskapps/games/public/archive_e3/DungeonSiege&FreeLancer/Dungeon Siege')
In [24]: lista
Out[24]:
['Chris Taylor .doc',
'Dungeon Siege Fact Sheet.doc',
'Logos',
'Screenshots',
'Sketches']
In [25]: for l in lista:
....: print host.path.isdir(l)
....: print host.path.isfile(l)
....: print host.path.islink(l)
....:
False
False
False
False
False
False
False
False
False
False
False
False
False
False
False
maybe the & in the pathname?
regards Nicola
You list a remote directory, but you don't change into it and call
is*()
with the relative paths returned bylistdir
. As Python'sos.path.is*()
methods, ftputil's returnFalse
if they can't find a filesystem item with the given name.Probably the documentation should point this pitfall out, which I've also run into in the past. I added something on that to the documentation in changeset 862.