Python出现UnicodeEncodeError: 'gbk' codec can't encode character '\u22ef' in position 17: illegal multibyte sequence的错误

起因:在Python3.6.4中能够运行,Python3.5.1 中出现该错误

解决办法:加encoding = 'utf-8'

原代码:(部分代码)



1. # 导演  
2. '(?<=<span class="inq">).*?(?=</span>)', str(info))
3. if comment == []: # 判断电影是否有评语
4. '此片没有评价'
5. else:
6. 0]
7. # 评语
8. '<span class="rating_num" property="v:average">(.*?)</span>', str(info))[0]
9. 1)
10. #存入TXT
11. "C:\Users\User\AppData\Local\Programs\Python\Python35\新建文件夹\douban.txt", "a",encoding = 'utf-8')

修改后:




1. # 导演  
2. '(?<=<span class="inq">).*?(?=</span>)', str(info))
3. if comment == []: # 判断电影是否有评语
4. '此片没有评价'
5. else:
6. 0]
7. # 评语
8. '<span class="rating_num" property="v:average">(.*?)</span>', str(info))[0]
9. 1)
10. #存入TXT
11. "C:\Users\User\AppData\Local\Programs\Python\Python35\新建文件夹\douban.txt", "a",encoding = 'utf-8')#此处修改