错误信息如下:
1 page_data = m.decode('gbk') 2 UnicodeDecodeError: 'gbk' codec can't decode byte 0xa7 in position 3868: illegal multibyte sequence
解决办法:
1 page_data = m.decode('gbk', 'ignore')
- 因为decode的函数原型是decode([encoding], [errors='strict']),可以用第二个参数控制错误处理的策略,默认的参数就是strict,代表遇到非法字符时抛出异常;
- 如果设置为ignore,则会忽略非法字符;
- 如果设置为replace,则会用?取代非法字符;
- 如果设置为xmlcharrefreplace,则使用XML的字符引用。