接个需求,需要从hive集群中捞出一部分数据写入表中,需要用 spark-submit把python脚本打包成压缩文件放到hive集群中执行,,本地python脚本是3.6的,然后hive集群中的py脚本是2.7的,当我处理完数据insert回表中的时候一直报错
UnicodeEncodeError: 'ascii' codec can't encode character u'\u79c3' in position 1
这个报错不是来自本地环境,也就是不是python3.6版本的报错,是集群中跑的python2.7的版本报错,本身我也是写php的,python了解的比较少,搜了一下,这个方法是管用的
解决方案如下:
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
main函数中导入三行代码,问题解决