我一直在使用这个python代码:
pattern = u'丨フ丨ノ一丨ノ丶フノ一ノ丨フ一一ノフフ丶'
result = [u'<span id="z_i_t2_bis" title="\u7ad6\u6298\u7ad6\u6487\u6a2a\u7ad6\u6487\u637a\u6298\u6487\u6a2a\u6487\u7ad6\u6298\u6a2a\u6a2a\u6487\u6298\u6298\u637a">\u4e28\u30d5\u4e28\u30ce\u4e00\u4e28\u30ce\u4e36\u30d5\u30ce\u4e00\u30ce\u4e28\u30d5\u4e00\u4e00\u30ce\u30d5\u30d5\u4e36</span>']
if pattern in result[0]:
print('found')
但这很麻烦,而且并没有真正做到我想要的,这就是让逃脱的gobbledygook回归到可以理解的东西,就像那种模式一样。是否有一些简单的unix工具或commnand可以快速有效地执行此任务?
seems that is one would work,但我尝试过但事实并非如此。即,
result = "\u4e28\u30d5\u4e28\u30ce\u4e00\u4e28\u30ce\u4e36\u30d5\u30ce\u4e00\u30ce\u4e28\u30d5\u4e00\u4e00\u30ce\u30d5\u30d5\u4e36"
result.decode('utf-8')
生成错误:attribute error 'str' object has no attribute 'decode'
答案 0 :(得分:1)
如果您只是print(result)
,那么您将获得“gobbledygook”,因为这就是Python在给出明确的输出作为列表或元组的元素时使用的内容。但是如果直接打印字符串print(result[0])
,它将尝试按照预期打印自然字符。
如果您想自己将字符转换为utf-8,请使用encode
而不是decode
。 encode
将Unicode字符串转换为字节,decode
从字节生成Unicode字符串。