[Python-bugs-list] [ python-Bugs-495693 ] urllib doesn't support passive FTP
noreply@sourceforge.net
noreply@sourceforge.net
Thu, 20 Dec 2001 16:51:59 -0800
Bugs item #495693, was opened at 2001-12-20 16:51
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=495693&group_id=5470
Category: Python Library
Group: Feature Request
Status: Open
Resolution: None
Priority: 5
Submitted By: Matthias Klose (doko)
Assigned to: Nobody/Anonymous (nobody)
Summary: urllib doesn't support passive FTP
Initial Comment:
[please CC 40981@bugs.debian.org on replies; complete
report can be found at http://bugs.debian.org/40981]
urllib.urlopen/urlretrieve doesn't support passive FTP
urllib doesn't support passive FTP, even though the
underlying ftplib
module does. I dunno what the right approach is
(perhaps a urllib
module global variable). I know some tools (I'm aware
of at least
ncftp and wget) autodetect whether PASV is supported
by FTP servers;
perhaps that intelligence could be added to ftplib.
(Also: the FTP class's set_pasv() method isn't
documented in my
version of python-docs; I haven't checked the new
1.5.2 docs yet
however.)
At the moment, I'm using this ugly hack to get around
it:
# Really ugly hack; don't try this at home:
def ftpwrapper_init(self):
import ftplib
self.busy = 0
self.ftp = ftplib.FTP()
self.ftp.set_pasv(1)
self.ftp.connect(self.host, self.port)
self.ftp.login(self.user, self.passwd)
for dir in self.dirs:
self.ftp.cwd(dir)
urllib.ftpwrapper.init = ftpwrapper_init
# End really ugly hack
----------------------------------------------------------------------
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=495693&group_id=5470