安装依赖包jupyter_echarts_pypkg和simplejson遇到的问题解决方案(离线脱机状态下安装pyecharts)

最近在公司因为业务需要,第一次在内网中(离线/脱机状态)自己手动安装Pyecharts。在花费大量时间踩过各种坑后,终于安装成功了。 希望本文能节省遇到类似问题老铁们的时间,特此记录。本文与其他教程不同的地方是,会详细讲解在安装依赖包jupyter_echarts_pypkg, 以及prettytable和simplejson时鲜有提及遇到的问题。 


鉴于笔者水平有限,文中难免有错误,望大家谅解,也欢迎您留言指正。(也是我的第一篇原创文章)
鉴于本文的写作时间原因,暂时没有放报错信息以及安装成功的截图,希望以后有空会补上。

提示:默认读者都会使用cmd或者terminal安装.whl文件或者处理压缩包。

好了,废话不多说,直接上干货。

操作系统:Win10
Python版本号:3.8
开发环境:Jupyter notebook

我当时安装了13个依赖包或压缩包,包括pyecharts.whl则一共14个。其中三个依赖包可能是非必需的,但根据其他文章的描述,保险起见我还是安装了。

根据https://blog.csdn.net/sunjinshengli/article/details/86070701(以后简称为“链接1”)所述,以及https://www.jb51.net/article/108590.htm(同理简称为“链接2”)我按如下的顺序安装了依赖包(因时间关系,没有尝试其他顺序,即没有去探讨其中的依赖关系,觉得没必要去探究这个)。以下有些依赖包的版本号可能与这两个链接中所提供的不完全一样,因为我当时找的都是符合要求的最新版本。

1.dukpy-0.2.3-cp38-cp38-win_amd64.whl 
2.pyecharts_jupyter_installer-0.0.3-py2.py3-none-any.whl
3.macropy3-1.1.0b2.tar.gz 
4.javascripthon-0.11.tar.gz
5.jupyter-echarts-pypkg-0.1.5.tar.gz 
6.lml-0.0.9-py2.py3-none-any.whl
7.pyecharts_javascripthon-0.0.6-py2.py3-none-any.whl
8.Jinja2-2.11.2-py2.py3-none-any.whl

(注意最后一个是Jinja2而不是Jinja)

注意:
        以上八个依赖包中均可以在PyPI官网上下载(在该链接中输入依赖包名即可)。但第5个需要特别注意,当时解压第5个之后,发现缺少resources文件夹(或者是有文件夹但内容为空),导致安装时报错(提示找不到registry.json文件)。


解决方案:到两个github链接pyecharts/jupyter-echarts-pypkgpyecharts/jupyter-echarts上下载(点击这两个超链接即可),注意两个都要下载,而不是其中一个。因为在前者链接中,手动点击绿色按钮下载zip(或者用git clone)后,会发现resources文件夹没有被拷贝下来(理由是resources是一个超链接文件夹,其名字后面为@符号加一个哈希值)。所以需要在后者链接中补充下载,放到前者相应的文件夹中(也可不放直接安装?可以试试,不太清楚)。

安装依赖包jupyter_echarts_pypkg和simplejson遇到的问题解决方案(离线脱机状态下安装pyecharts)
如上图所示,这是前者需要特别重视的一个路径。手动下载zip或者git clone无法将其中的resources文件夹拷贝下来。该文件夹需要在后者的链接中下载。

根据链接2的内容,我又安装了如下几个依赖包(即之前说的可能是非必需的)。这三个安装的顺序应该是没有要求。
9. pytest_runner-5.2-py2.py3-none-any.whl
10.MarkupSafe-1.1.1-cp38-cp38-win_amd64.whl
11.Pillow-7.2.0-cp38-cp38-win_amd64.whl 

以下两个依赖包的安装过程(可能遇到的错误)其他文档好像鲜有提及(也有可能打脸,毕竟阅读量有限)
12.prettytable-0.7.2.tar.gz
13.simplejson-3.17.0.tar.gz

注意:
第12个依赖包的安装非常顺利。重点在第13个。当时遇到的问题是,PyPI官网上只提供了对应3.7的版本文件,而找不到3.8。尝试了对应3.7的文件以及.tar.gz压缩包,安装过程中都会报错,比较头疼。

安装依赖包jupyter_echarts_pypkg和simplejson遇到的问题解决方案(离线脱机状态下安装pyecharts)

如上图所示,在PyPI官网中找不到对应的py3.8的版本,蛋疼。

但没有关系,我们有如下解决方案:

从该github链接中下载:https://github.com/simplejson/simplejson得以解决。

以上依赖包成功安装之后,安装最后一个核心的包pyecharts
14.pyecharts-1.8.1-py3-none-any.whl

提示successfully installed则大功告成,很有成就感有木有!!


总结(几个容易忽略的地方及温馨提示):
1.Jinja2:必须装,在链接1文章后面提到了,容易忽略。


2.jupyter-echarts-pypkg-0.1.5.tar.gz:注意官网提供的依赖包有错误,不能用。需要在上述两个github链接上下载(当然也希望后续PyPI官网会更新,不用这么麻烦)。


3.prettytable:必须装,两个教程里都没有提到,但当时安装报错信息里有提到。


4.simplejson:同上面的第三点。但与之不同的是,它在PyPI官网上下载的包没有3.8对应的版本。需要在上述提供的github链接中下载。

 

5.对于.whl文件,在cmd中输入pip install +该文件所在的路径(需要带上后缀.whl);对于压缩包,解压后cd到含有setup.py的文件夹后,然后输入命令“python setup.py install” 即可。


6.每个依赖包的用途PyPI上基本上都有解释,这里作为非重点省略。

文中提到的github链接汇总:
1.用于安装jupyter-echarts-pypkg:https://github.com/pyecharts/jupyter-echarts-pypkg和https://github.com/pyecharts/jupyter-echarts/tree/6160f2f030a7ac19b51af13aac3405d175a2a5a0

2.用于安装simplejson:https://github.com/simplejson/simplejson

参考链接:
1.https://blog.csdn.net/sunjinshengli/article/details/86070701(链接1)
2.https://www.jb51.net/article/108590.htm (链接2)

修改记录:

版本号 日期 修改内容
v0.1 2020-07-16 第一版发布
v0.2 2020-07-16 修改个别字词的大小写,以及超链接等