Antoon Pardon <antoon.par...@rece.vub.ac.be> writes:

> This is the code I run (python 3.3)
>
> host = ...
> user = ...
> passwd = ...
>
> from ftplib import FTP
>
> ftp = FTP(host, user, passwd)
> ftp.mkd(b'NewDir')
> ftp.rmd(b'NewDir')
>
> This is the traceback
>
> Traceback (most recent call last):
>   File "ftp-problem", line 9, in <module>
>     ftp.mkd(b'NewDir')
>   File "/usr/lib/python3.3/ftplib.py", line 612, in mkd
>     resp = self.voidcmd('MKD ' + dirname)
> TypeError: Can't convert 'bytes' object to str implicitly
>
> The problem is that I do something like this in a backup program.
> I don't know the locales that other people use. So I manipulate
> all file and directory names as bytes.
>
> Am I doing something wrong?

The error message shows that ftplib expects a string here, not bytes.
You could use `ftp.mkd(some_bytes.decode(ftp.encoding))` as a
workaround.


--
akira

-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to