关于Python脚本通过crontab调度的时候报错UnicodeEncodeError: ‘ascii’ codec can’t encode characters in positi的解决方案

昨天通过Python写了了一段脚本,然后通过crontab将脚本调起来执行,手动执行的时候没有问题的,但是通过crontab进行调度就执行报错。

报错的原因如下:

Traceback (most recent call last):
  File "/opt/data-integration/workspace/rs_etl/pyscript/get_mobine_supplier.py", line 69, in <module>
    print("\u6570\u636e\u5199\u5165csv\u5f00\u59cb")
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordinal not in range(128)

看到这个报错第一个想到的应该就是编码的问题,有人说在Python脚本的前面加上 # coding:utf-8 但是那,加上之后还是报这个错。

最后通过网上的篇博客找到了答案。

https://jeffliz.wordpress.com/2019/04/16/python3-%E8%A7%A3%E5%86%B3unicodeencodeerror-ascii-codec-cant-encode-characters-%E9%97%AE%E9%A2%98/

按照上面的操作,Python脚本终于调通了,数据完整的插入到数据库当中。

解决办法,在执行Python脚本的时候设置编码即可,

至此问题得到解决。

posted on 2019-07-26 14:10  gxg123  阅读(1744)  评论(0编辑  收藏  举报

导航