錯誤信息如下:
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的字符引用。