在Python

时间:2015-08-27 10:23:21

标签: python unicode

获取以下样本数据(可以找到整个列表here):

Ω≈ç√∫˜µ≤≥÷
åß∂ƒ©˙∆˚¬…æ
œ∑´®†¥¨ˆøπ“‘
¡™£¢∞§¶•ªº–≠
¸˛Ç◊ı˜Â¯˘¿
ÅÍÎÏ˝ÓÔÒÚÆ☃
Œ„´‰ˇÁ¨ˆØ∏”’
ヽ༼ຈل͜ຈ༽ノ ヽ༼ຈل͜ຈ༽ノ 
(。◕ ∀ ◕。)
`ィ(´∀`∩
_   _ロ(,_,*)
・( ̄∀ ̄)・:*:

我一直在将来自前面提到的字符串转储的数据输出到单独的HTML文件中(没有必要详细说明,因为这与问题无关),如下所示:

for value in tags['tags']:
    for line in data:
        with open('./output/fuzzml' + str(file_count), 'w') as output:
            parsed_string = value.replace('[[VAR]]', u''.join(line.rstrip()))
            output.write(parsed_string)
            file_count += 1

对于相对较小的数据转储部分,它可以很好地工作,直到遇到一些棘手的符号,如上所述。我已经多次修改了第5行(u''.join(line.rstrip())),希望以一种能正确输出任何内容的方式进行编写,但是它会在某个时刻陷入困境并引发UnicodeDecodeError异常:

Traceback (most recent call last):
File "generate-html.py", line 37, in <module>
  main()
File "generate-html.py", line 34, in main
  generate_html(tag_file, data_file)
File "generate-html.py", line 18, in generate_html
  parsed_string = value.replace('[[VAR]]', u''.join(line.rstrip()))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xce in position 0: ordinal not in range(128)

使用以下示例集从JSON文件中提取tags

"tags": [
          "<img src=\"[[VAR]]\">",
          "<a href=\"[[VAR]]\"><img src=\"[[VAR]]\">",
          "<script>[[VAR]]</script>",
          "<[[VAR]]>Hello World<[[VAR]]>"
   ]

data只是上述链接/示例数据中的原始字符串。

0 个答案:

没有答案