用pycharm 编辑爬虫脚本,本地电脑python3环境可执行,服务器上python2环境无法执行,抛异常,异常如下:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1....
原因可能如下:python3 和python2使用的编码格式不相同
查看当前使用 python 编码
python2:
Python 2.7.10 (default, May 23 2015, 09:40:32) [MSC v.1500 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>> import sys >>> sys.getdefaultencoding() 'ascii'
python3:
Python 3.5.0 (v3.5.0:374f501f4567, Sep 13 2015, 02:27:37) [MSC v.1900 64 bit (AMD64)] on win32 Type "copyright", "credits" or "license()" for more information. >>> import sys >>> sys.getdefaultencoding() 'utf-8'
修改python2 编码为python3:
import sys reload(sys) sys.setdefaultencoding('utf-8')
所以,在你的程序执行的过程中,遇到上面的报错信息时。
可以将上面的三行代码加到Python程序的头部。