UnicodeDecodeError: 'ascii' 编码无法解码位置0的字节0x96
我看了很多类似问题的回答,但还是找不到我代码出错的地方。错误发生在我尝试运行 celery 的时候,命令是:celery –A runLogProject worker –loglevel=INFO
。我把所有和 Celery 有关的代码都注释掉了,但还是出现同样的错误。我也试着重新安装了 Celery,但还是不行。我不知道该尝试什么其他方法。以下是错误的详细信息:
C:\Python27\lib\site-packages\celery\bin\celery.py:803: UnicodeWarning: Unicode equal comparison failed to convert both
arguments to Unicode - interpreting them as being unequal
if len(argv) > 1 and 'worker' in argv[0:3]:
C:\Python27\lib\site-packages\celery\bin\celery.py:765: UnicodeWarning: Unicode equal comparison failed to convert both
arguments to Unicode - interpreting them as being unequal
if 'multi' in argv[1:3]: # Issue 1008
C:\Python27\lib\site-packages\celery\bin\base.py:398: UnicodeWarning: Unicode equal comparison failed to convert both ar
guments to Unicode - interpreting them as being unequal
if '--version' in argv:
Traceback (most recent call last):
File "C:\Python27\lib\runpy.py", line 162, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "C:\Python27\lib\runpy.py", line 72, in _run_code
exec code in run_globals
File "C:\Python27\Scripts\celery.exe\__main__.py", line 9, in <module>
File "C:\Python27\lib\site-packages\celery\__main__.py", line 30, in main
main()
File "C:\Python27\lib\site-packages\celery\bin\celery.py", line 81, in main
cmd.execute_from_commandline(argv)
File "C:\Python27\lib\site-packages\celery\bin\celery.py", line 769, in execute_from_commandline
super(CeleryCommand, self).execute_from_commandline(argv)))
File "C:\Python27\lib\site-packages\celery\bin\base.py", line 304, in execute_from_commandline
argv = self.setup_app_from_commandline(argv)
File "C:\Python27\lib\site-packages\celery\bin\base.py", line 435, in setup_app_from_commandline
preload_options = self.parse_preload_options(argv)
File "C:\Python27\lib\site-packages\celery\bin\base.py", line 500, in parse_preload_options
return self.preparse_options(args, self.preload_options)
File "C:\Python27\lib\site-packages\celery\bin\base.py", line 512, in preparse_options
if arg.startswith('--'):
UnicodeDecodeError: 'ascii' codec can't decode byte 0x96 in position 0: ordinal not in range(128)
1 个回答
8
这个问题有点棘手。问题出在你输入命令的方式上:
错误的:
celery –A runLogProject worker –loglevel=INFO
正确的:
celery -A runLogProject worker -loglevel=INFO
这两者之间几乎看不出区别。第一个命令中,参数 -A 和 -loglevel 使用的是长横线(ascii 码:8211),而应该使用的是短横线(ascii 码:45)。
如果你在使用 OSX 系统,这可能是因为你在按下短横线键的时候同时按了 ALT 键,或者你是从某个博客上复制粘贴过来的,而那个博客用了奇怪的自动纠正功能。