【问题标题】:spyder unicode decode error in startup启动时spyder unicode解码错误
【发布时间】:2016-08-25 18:52:52
【问题描述】:

在获得作者许可的情况下,我在解析 tumblr 页面时使用了 spyder-ide,但在某些时候一切都崩溃了。甚至我的 linux 系统也冻结了。好吧,现在切入正题,我无法启动 spyder,在我将 spyder 写入终端后,它给了我以下错误:

 Traceback (most recent call last):
  File "/home/dk/anaconda3/bin/spyder", line 2, in <module>
    from spyderlib import start_app
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/start_app.py", line 13, in <module>
    from spyderlib.config import CONF
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/config.py", line 736, in <module>
    subfolder=SUBFOLDER, backup=True, raw_mode=True)
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/userconfig.py", line 215, in __init__
    self.load_from_ini()
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/userconfig.py", line 265, in load_from_ini
    self.read(self.filename(), encoding='utf-8')
  File "/home/dk/anaconda3/lib/python3.5/configparser.py", line 696, in read
    self._read(fp, filename)
  File "/home/dk/anaconda3/lib/python3.5/configparser.py", line 1012, in _read
    for lineno, line in enumerate(fp, start=1):
  File "/home/dk/anaconda3/lib/python3.5/codecs.py", line 321, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode bytes in position 0-1: invalid continuation byte

我尝试了here 的解决方案,但收到以下错误:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/spyder.py", line 107, in <module>
    from spyderlib.utils.qthelpers import qapplication
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/utils/qthelpers.py", line 24, in <module>
    from spyderlib.guiconfig import get_shortcut
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/guiconfig.py", line 22, in <module>
    from spyderlib.config import CONF
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/config.py", line 736, in <module>
    subfolder=SUBFOLDER, backup=True, raw_mode=True)
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/userconfig.py", line 215, in __init__
    self.load_from_ini()
  File "/home/dk/anaconda3/lib/python3.5/site-packages/spyderlib/userconfig.py", line 265, in load_from_ini
    self.read(self.filename(), encoding='utf-8')
  File "/home/dk/anaconda3/lib/python3.5/configparser.py", line 696, in read
    self._read(fp, filename)
  File "/home/dk/anaconda3/lib/python3.5/configparser.py", line 1012, in _read
    for lineno, line in enumerate(fp, start=1):
  File "/home/dk/anaconda3/lib/python3.5/codecs.py", line 321, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode bytes in position 0-1: invalid continuation byte

我尝试卸载并重新安装 anaconda,但它似乎不起作用我愿意接受建议,我对 python 非常陌生,所以我也会对错误的可能原因进行简单的解释。

提前致谢

【问题讨论】:

    标签: python-3.x unicode spyder utf8-decode


    【解决方案1】:

    这就是我解决问题的方法。
    我打开了这个:spyderlib/userconfig.py
    并改变了这个:self.read(self.filename(), encoding='utf-8')
    对此:self.read(self.filename(), encoding='latin-1')
    它给了我一个Warning: File contains no section headers,但无论如何都启动了 spyder。之后,我关闭了spyder,打开终端输入spyder --reset,然后重启spyder,现在好像可以了。
    以下是你不应该为这个问题不惜一切代价做的事情:思考这些,我吸取了教训:

    python3.5/configparser.py
    python3.5/codecs.py
    

    【讨论】:

      猜你喜欢
      • 2021-05-08
      • 2020-12-30
      • 2022-01-10
      • 2018-04-26
      • 1970-01-01
      • 2016-01-25
      相关资源
      最近更新 更多