windows安装superset和bug排坑记

Posted gambler

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windows安装superset和bug排坑记相关的知识,希望对你有一定的参考价值。

导言

superset安装很容易出现各种各样的问题,主要是各版本兼容问题引起,因此建议严格按照下述安装步骤及版本,否则就是无穷无尽的bug,作者将把自己安装过程中所有遇到的问题或者搜集一些网上的bug都记录下来,也基本上覆盖了绝大部分人遇到的问题,up都汇总起来。

安装步骤

第一步 创建虚拟环境

安装anaconda,然后创建虚拟环境

conda create -n superset python=3.7

tips:

这里之所以选择使用3.7版本,是因为接下来的各种依赖都有严格的版本控制,因此也建议大家使用3.7版本,创建版本时会提示确认安装基础包,这些基础包是必不可少的。

activate supsert # 激活刚刚创建的虚拟环境

第二步 安装superset和相关依赖

安装requests和flask-appbuilder

pip install requests
pip install flask-appbuilder

在安装flask-appbuilder的时侯安装了大量的依赖包,但其中有些包需要更改版本

pip install werkzeug==0.16.1
pip install flask-jwt-extended==3.18.1
pip install flask==0.12.5
pip install sqlalchemy==1.2.18
pip install superset==0.28.1

tips:

安装superset时会提示大量的红字,不要紧,这是因为有些包没有安装好或者文件不存在,会自动给我们建立,可以再次执行 pip install superset==0.28.1,就不会报错了。

第三步 启动superset

进入superset 的bin目录

cd /d G:Anaconda3envssupersetLibsite-packagessupersetin #作者的文件目录,按照自己的目录修改即可

进入目录后,开始执行

# 创建用户
fabmanager create-admin --app superset

tips:

这里按照提示可以自己随便填写,记住自己填写的username和password即可,Repeat for confirmation是重复填写密码确认

# 初始化数据库
python superset db upgrade
python superset init
# 启动superset
python superset runserver -d

启动成功

技术图片

第四步 进入superset平台

在浏览器中打开地址http://127.0.0.1:8088/login/

技术图片

输入刚刚填写的username和password即可。

至此superset全部安装成功。

BUG排坑记

BUG:AttributeError: ‘NoneType‘ object has no attribute ‘auth_type‘

出现这个问题,应该主要是版本不兼容引起的,作者更换了上述版本superset 0.28.1之后,就没有出现这个问题

BUG:cannot import name ‘_maybe_box_datetimelike‘ from ‘pandas.core.common‘ (g:anaconda3envssupersetlibsite-packagespandascorecommon.py)

按照上述提示位置,修改即可,将maybe_box_datetimelike修改成_maybe_box_datetimelike

BUG:‘superset‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。

按照上面安装步骤三执行即可,进入该目录后,在superset命令前加个python即可

BUG:‘fabmanager‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。

没有安装flask,按照步骤三按照相关包即可

BUG:sqlalchemy.exc.InvalidRequestError: Can‘t determine which FROM clause to join from, there are multiple FROMS which can join to this entity. Try adding an explicit ON clause to help resolve the ambiguity.

版本问题,将sqlalchemy版本修改成1.2即可,执行pip install sqlalchemy==1.2.18

BUG:SystemExit: error: Microsoft Visual C++ 14.0 is required. Get it with "Build Tools for Visual Studio"

缺少windows运行环境,按照提示安装Visual C++ 14.0即可,单Visual C++ 14.0链接:https://pan.baidu.com/s/17dWVVPlDiB7YziWD1uFyxw 提取码:7hs9

BUG:Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

pip install安装失败的时候,会出现这个bug,主要在于pytest-runner缺失,执行pip install --user pytest-runner即可

BUG:fabmanager is going to be deprecated in 2.2.X, you can use the same commands on the improved ‘flask fab ’

这个是新版提示建议使用flask fab命令,我们继续使用老版本的fabmanager即可,不必理会

BUG: ImportError :No module name ‘geohash‘

无论怎么执行pip install geohash都会报上面这个bug,主要是安装geohash的时候,会默认未大写的Geohash,因此直接执行pip install python-geohash即可,当然也可以修改将Geohash文件名改成 geohash,geohash文件夹下的 init.py 中的 from geohash import decode_exactly, decode, encode改成 from .geohash import decode_exactly, decode, encode

参考:

https://zhuanlan.zhihu.com/p/111295100

https://www.jianshu.com/p/8b27ff71429f

以上是关于windows安装superset和bug排坑记的主要内容,如果未能解决你的问题,请参考以下文章

Python3+ Django2.7开发web排坑记001

Python3+ Django2.7开发web排坑记004_restfulframework 实现前后端分离

Superset 0.28三奏曲——安装集成ECharts和汉化

Windows nvm的安装使用(及排坑)

数据看板superset在Windows环境下安装

AWS Windows EC2 安装Docker 和运行Superset