Note that, in addition to normalizing domain components, the process also maps U+3002 IDEOGRAPHIC FULL STOP (。) to U+002E FULL STOP (.) for use as a separator, a nice touch for domain names encoded in blackboard bold.
Also, the author's one-liner, updated for Python 3:
python3 -c 'import sys;print(sys.argv[1].encode("idna").decode("ascii"))' "℡"