Python菊花文转换器
Oct 11, 2010感谢Meng Li同学莅临指导,我发现世界上除了火星文,还有菊花文(又名金星文,大概是看得眼冒金星的意思)
据说谷歌输入法可以输入,但是作为Linux党只好自己动手:
import sys
inputstr = sys.argv[1]
inputlist = list(inputstr.decode('utf-8'))
# print repr('҉'.decode('ascii', 'xmlcharrefreplace'))
# Find the unicode for html character entity ҉
# It turns out to be u'҉'
decoration = u'҉'
encodedString = decoration + decoration.join(inputlist) + decoration
from BeautifulSoup import BeautifulStoneSoup
decodedString=unicode(BeautifulStoneSoup(encodedString,
convertEntities=BeautifulStoneSoup.HTML_ENTITIES ))
print decodedString
用法:
python test.py 菊花文是个好东东
菊҉花҉文҉是҉个҉好҉东҉东҉<
原理:
菊花文其实就是在字符中间加入一个html character entity 即 ҉
Python做的就是读入正常的中文,每个字符之间插入这个符号,然后转换成 “real” unicode输出。最后的转换需要第三方包 BeautifulSoup
或者可以参考这里,自己写个函数
p.s. 偶觉得这个依然还是很容易被机器过滤的,还是火星文靠谱啊