Benjamin Kaplan wrote: > On Wed, Mar 30, 2011 at 10:34 AM, Gnarlodious <gnarlodi...@gmail.com> > wrote: >> RSS script runs fine on my dev machine but errors on the server >> machine. Script was last run 3 days ago with no problem. Possible >> clue: dev machine is (Mac OSX) running Python 3.1.1 while server is >> running Python 3.1.3. I have not updated anything that should suddenly >> cause this error starting yesterday. >> >> The error originates at 'ยท' which string contains a · >> character. >> >> Complete error message is: >> >> SyntaxError: Non-ASCII character '\xc2' in file /Library/WebServer/ >> Sites/Sectrum/Site/Feed.py on line 17, but no encoding declared; see >> http://www.python.org/peps/pep-0263.html for details >> >> Any help how to fix this and why it suddenly started erroring 2 days >> ago... >> >> -- Gnarlie > > You don't have a · character. Your computer doesn't understand > "characters". You have the byte sequence \xc2\xb7. When you have a > Unicode string (the default in Python 3), Python needs some way of > converting the byte sequence to a character sequence. The way it does > that is through the encoding. But you don't have an encoding > specified, so rather than guess, Python is falling back on the lowest > common denominator: ASCII, which doesn't understand the byte \xc2- > hence the error. > > To fix this, just put the line > # coding=utf-8 > at the very top of the code file.
All good advice except that Python 3 defaults to UTF-8 not ASCII as its source encoding. -- http://mail.python.org/mailman/listinfo/python-list