UnicodeDecodeError?

原因很简单,你获取到的内容非utf8,至少第一个字符不是utf8。utf8的一个字符的第一个字节不可能高位为1000。至于办法,先确认编码(由于我不玩豆瓣所以没观察过),然后该ignore的ignore……接下来是吐槽py3的str时间:大家都知道py3的str强制unicode,这个设计实在是太……不灵活了。str强制unicode意味着但凡str就要考虑编码问题;以前py2的str由bytes代替,两者却是有很大差异的,例如print函数只接受str。当shell不是utf8、数据源不是utf8时就多了很多麻烦。比方说读取一堆gbk然后print出来,windows下原本可以直接塞str管它啥编码一路捅就行,现在必须先解码到unicode再print同时编码……明明很蛋疼……
■网友
谢邀,我是个新手。。记得在py2中好像可以添加ignore参数来忽略非utf8的字符。另外,我想问问你是在哪执行py代码的,idle?还是cmd。。已帮你召唤大神 @coldwings


    推荐阅读