我在这里研究一种相当数据密集的算法,速度是我的首要任务。基本上它涉及使用非常大的字符串。如果没有太多细节,它就会在没有这些代码的情况下眨眼间工作:
html = unicode(strip_tags(html_source), errors='ignore')
html2 = unicode(strip_tags(html_source2), errors='ignore')
如果我不将每个字符串编码为unicode,那么我遇到的问题就是我得到了可怕的:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 5747: ordinal not in range(128)
我有什么办法可以简化这个过程吗? ascii范围内的一小部分数据对我来说并不重要。无论如何我可以在不编码整个字符串的情况下一起忽略错误吗?
非常感谢! (我目前正在使用python2.7.3)
答案 0 :(得分:2)
您可以使用.decode()
删除所有非ASCII字符:
your_string.decode('ascii', errors='ignore')