Changing filenames from Greeklish => Greek (subprocess complain)
Michael Torrie
torriem at gmail.com
Tue Jun 4 11:07:19 EDT 2013
On 06/04/2013 08:18 AM, Νικόλαος Κούρας wrote:
> No, brackets are all there. Just tried:
>
> # Compute a set of current fullpaths
> fullpaths = set()
> path = "/home/nikos/www/data/apps/"
>
> for root, dirs, files in os.walk(path):
> for fullpath in files:
> fullpaths.add( os.path.join(root, fullpath) )
> print (fullpath )
> print (fullpath.encode('iso-8859-7').decode('latin-1') )
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
This is wrong. You are converting unicode to iso-8859-7 bytes, then
trying to convert those bytes back to unicode by pretending they are
latin-1 bytes. Even if this worked it will generate garbage.
> What are these 'surrogate' things?
It means that when you tried to decode greek bytes using latin-1, there
were some invalid unicode letters created (which is expected, since the
bytes are not latin-1, they are iso-8859-7!).
If you want the browser to use a particular encoding scheme (utf-8),
then you have to print out an HTTP header before you start printing your
other HTML data:
print("Content-Type: text/html;charset=UTF-8\r\n")
print("\r\n)
print("html data goes here)
More information about the Python-list
mailing list