*** Note that as of version 2.3 Python has native IDN support, see *** . This is a Python interface over Simon Josefsson's libidn . To install, be sure you have libidn installed, check the Makefile, and type "make" and "make install". Sample use: import idn print idn.idn2ace("Café"); # The string must be in UTF-8 With a conversion to UTF-8 first, assuming your locale is Latin-1: import idn name = sys.argv[1] ustring = unicode(name, "Latin-1") print idn.idn2ace(ustring.encode("UTF-8")) ------------------ Stephane Bortzmeyer