Plotly 杀死了我的 python 安装

Posted

技术标签:

【中文标题】Plotly 杀死了我的 python 安装【英文标题】:Plotly killed my python install 【发布时间】:2015-04-29 08:20:09 【问题描述】:

我只是尝试使用 pip 安装 Plotly。我正在从 Anaconda 运行 python,现在每当我尝试运行任何 python 时,我都会收到以下错误,我不知道如何修复它。我在 Windows 7 64bit, Python3,4 上运行

    PS Z:\> pip
Traceback (most recent call last):
  File "C:\Anaconda3\Scripts\pip-script.py", line 3, in <module>
    from pip import main
  File "C:\Anaconda3\lib\site-packages\pip\__init__.py", line 11, in <module>
    from pip.vcs import git, mercurial, subversion, bazaar  # noqa
  File "C:\Anaconda3\lib\site-packages\pip\vcs\mercurial.py", line 9, in <module>
    from pip.download import path_to_url
  File "C:\Anaconda3\lib\site-packages\pip\download.py", line 22, in <module>
    from pip._vendor import requests, six
  File "C:\Anaconda3\lib\site-packages\pip\_vendor\requests\__init__.py", line 58, in <module>
    from . import utils
  File "C:\Anaconda3\lib\site-packages\pip\_vendor\requests\utils.py", line 25, in <module>
    from .compat import parse_http_list as _parse_list_header
  File "C:\Anaconda3\lib\site-packages\pip\_vendor\requests\compat.py", line 77, in <module>
    import simplejson as json
  File "C:\Anaconda3\lib\site-packages\simplejson\__init__.py", line 112, in <module>
    from .scanner import JSONDecodeError
  File "C:\Anaconda3\lib\site-packages\simplejson\scanner.py", line 10, in <module>
    c_make_scanner = _import_c_make_scanner()
  File "C:\Anaconda3\lib\site-packages\simplejson\scanner.py", line 6, in _import_c_make_scanner
    from simplejson._speedups import make_scanner
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x83 in position 4: invalid start byte
PS Z:\>

【问题讨论】:

【参考方案1】:

plotly 包的 1.6.10 版本开始,simplejsonordereddict 包不再是依赖项。

TL;DR:

Python 2.6 应该使用:

pip install plotly[PY2.6]

虽然 Python 2.7、3.3 和 3.4 仍应使用:

pip install plotly

更多信息:

如果您已经在这篇文章中遇到问题,您可能需要删除 simplejson 包,如 scjody 给出的答案中所述。

simplejsonordereddict 包对于 Python 2.6 到 Python 3.4 具有共同的依赖关系。然而,由于simplejson 与 anaconda 冲突,我们现在为 pip 安装提供了一个“附加”选项。

和往常一样,由于我们依赖的IPython版本不支持Python 2.6,所以还有两个可选要求文件分别安装matplotlibIPython[notebook]等。

optional_requirements.txt
optional_requirements-2-6.txt

行情注释:

根据您使用的 shell,在使用 Python 2.6 的附加功能时,您可能需要将安装目标用引号 ('') 括起来:

pip install 'plotly[PY2.6]'

【讨论】:

【参考方案2】:

这是 Anaconda 的 pip 版本和最新版本的 simplejson(安装 Plotly 时安装的)之间的交互。

作为一种解决方法,

del C:\Anaconda3\lib\site-packages\simplejson

这将允许 pip 和 Plotly 再次工作。不幸的是,如果你升级 Plotly,这个问题会再次发生,所以我们将在 Plotly requirements.txt 文件中添加一个解决方法,以防止将来发生这种情况。 (在 Python 2.6 系统上实际上只需要 simplejson。)

我评论了一个与此相关的 Anaconda 问题:https://github.com/ContinuumIO/anaconda-issues/issues/238

Plotly Python API 问题回复:寻找解决方法,这样就不会再次发生(或其他用户):https://github.com/plotly/python-api/issues/197

【讨论】:

以上是关于Plotly 杀死了我的 python 安装的主要内容,如果未能解决你的问题,请参考以下文章

杀毒软件杀死了我的应用程序

Xcode 4 变得非常慢并且杀死了我的硬盘

Php不会杀死进程

Python/Plotly:如何使用要显示的信息自定义悬停模板?

将 Plotly Dash 嵌入 Flask 应用程序

Plotly dash dropdown boarder 没有按预期出现