在Windows系统

时间:2018-05-21 07:37:22

标签: python-3.x superset

我想在我的Windows 10中安装python模块 - 超集,但是,有些错误阻止我再安装。

输入“pip install superset”后,Belows是在cmd中执行的3个错误:

  1. python-geohash的构建轮失败

  2. flask-appbuilder 1.11.1要求Flask-SQLAlchemy == 2.1,但是 你将有flask-sqlalchemy 2.3.2这是不兼容的。

  3. 命令“c:\ pythonvir \ env \ scripts \ python.exe -u -c”import setuptools的, 标记化的文件 = 'C:\用户\劳伦斯\应用程序数据\本地\ TEMP \ PIP-安装-1lqhahdp \蟒-地理散列\ setup.py'; F = GETATTR(标记化, 'open',open)( file ); code = f.read()。replace('\ r \ n', '\ n'); f.close(); exec(编译(代码,文件,'exec'))“安装 --record C:\ Users \ Lawrence \ AppData \ Local \ Temp \ pip-record-f4lpe14x \ install-record.txt --single-version-external-managed --compile --install-headers c:\ pythonvir \ env \ include \ site \ python3.6 \ python-geohash“失败了 错误代码1 in C:\ Users \用户劳伦斯\应用程序数据\本地\ TEMP \ PIP-安装-1lqhahdp \蟒-地理散列\

  4. 有什么想法? 我试图安装VS2015和VS2017和sasl,但仍然有错误消息.. 谢谢 劳伦斯

2 个答案:

答案 0 :(得分:2)


设置Superset 0.28.1(当前点图像),适用于Windows的说明

  • 按照docs中的说明进行操作,直到“ pip install superset”之前
    • 其中包括全局的“ pip安装加密”。

在项目文件夹中打开命令提示符:

:: Drop some lib versions (this is required specifically for 0.28.1 on Windows,
:: doesn't apply on current master):
pip install Pandas==0.23.4
pip install SQLAlchemy==1.2.18
:: jwt started getting specific about the flask version from 3.21.0..
pip install flask-jwt-extended==3.20.0

:: Add current folder to those searched by python for modules:
set PYTHONPATH=%cd%

python wenv\Scripts\superset db upgrade
set FLASK_APP=superset
flask fab create-admin
python wenv\Scripts\superset load_examples
python wenv\Scripts\superset init

:: Start flask devserver:
python wenv\Scripts\superset run -p 8005 --with-threads --reload --debugger

在Windows上通过git clone设置超级集(2019-08-11)

如果从源代码设置Superset 0.34rc1(使用命令提示符) (主要来自RELEASING / Dockerfile.from_tarball,为Windows修改了一些内容)

git clone <superset repo>

在repo文件夹中打开外壳,然后安装并激活虚拟环境:

python -m venv wenv
:: To activate in powershell: . .\wenv\Scripts\activate
wenv\Scripts\activate

需要安装节点以构建静态版本,只需安装python软件包'nodeenv':

pip install nodeenv

Nodeenv与virtualenv类似,但是用于管理节点。

接下来,使用nodeenv将节点虚拟化为env,并将其放置在nodeenv目录中:

nodeenv nodeenv

激活节点虚拟环境:

:: unlike virtualenv, nodeenv does not provide a script for activating
:: within git bash shell on windows, so we have to use command prompt
:: and convert a few commands to windows equivalents.
:: https://github.com/ekalinin/nodeenv/issues/226
:: To activate in powershell: . .\nodeenv\Scripts\Activate.ps1
nodeenv\Scripts\activate
cd superset\assets
npm ci

全局安装Webpack:

npm install -g webpack webpack-cli

设置NODE_ENV并运行webpack:

set NODE_ENV=production
:: Note that webpack build requires min 2048 GB of RAM,
:: and spawns many child node.js instances, each of which
:: also require copious resources. If it doesn't have enough
:: resources, the build will of course fail.
webpack --mode=production --colors --progress

一段时间后,构建应该完成,并且文件应放置在superset / assets / dist中。

:: Remove node_modules dir as it's no longer needed:
rmdir /q /a node_modules

:: cd back to project root
cd ..\..

:: On Windows, it appears nodeenv replaces virtualenv settings,
:: it doesn't work concurrently, so open a new shell and re-activate 
:: python env.
wenv\Scripts\activate

:: Just in case install latest pip etc.
python -m pip install --upgrade pip setuptools wheel

:: Install project python packages
::                                         v - leave out the r, you must not.
python -m pip install -r requirements.txt -r requirements-dev.txt

:: install pyodbc, if planning to connect to ms sql
pip install pyodbc

:: superset/static/assets is supposed to symlink to ../assets.
:: So we need to make a *windows symlink* or adjust setup.py..

:: Windows symlink method:
:: Open cmd.exe in admin mode or enable windows Settings / 
:: Update and Security / For developers.

:: in superset/static, rename 'assets' file.
rename assets assets_linux
:: make windows symlink
mklink assets ..\assets

:: Or modify setup.py and remove "static" from PACKAGE_DIR:
:: PACKAGE_DIR = os.path.join(BASE_DIR, "superset", "assets")

:: Finally, install superset in editable mode
pip install -e .

:: compile language files (gettext .po files)
fabmanager babel-compile --target superset/translations

set PATH=%cd%\superset\bin;%PATH%
IF DEFINED PYTHONPATH (set PYTHONPATH=%cd%\superset;%PYTHONPATH%) ELSE (set PYTHONPATH=%cd%\superset)

从这里开始,我们大致遵循RELEASING \ from_tarball_entrypoint.sh:

:: If symlink was not created for /static/assets earlier:
:: Adjust superset/config.py, line 52 so it doesn't look in the 'static' folder anymore
:: This can also be adjusted by creating a superset_config.py file that overrides config.py..
:: PACKAGE_DIR = os.path.join(BASE_DIR, "assets")

python wenv\Scripts\superset db upgrade

set FLASK_APP=superset
flask fab create-admin
python wenv\Scripts\superset load_examples
python wenv\Scripts\superset init

启动flask devserver:

:: if superset/static/assets symlink was create, static files will be correctly served..

python wenv\Scripts\superset run -p 8005 --with-threads --reload --debugger

从git clone为Ubuntu Linux 18.04(2019-08-11)设置最新的Superset

  • 按照docs中的说明进行操作,直到“ pip install superset”之前
  • 包括必需的系统软件包和密码。

    git clone <superset repo>
    

在repo文件夹中打开外壳,然后安装并激活虚拟环境:

使用symlink为python 3.6+更正python二进制文件

python3 -m venv lenv
source lenv/bin/activate

需要安装节点以构建静态版本,只需安装python软件包'nodeenv':

pip install nodeenv

Nodeenv与virtualenv类似,但是用于管理节点。

接下来,使用nodeenv将节点虚拟化为env,并将其放置在nodeenv目录中:

nodeenv lnenv

激活节点虚拟环境:

source lnenv/bin/activate
cd superset/assets
npm ci

全局安装webpack(在这种情况下,全局安装意味着它将进入nodeenv的虚拟文件夹):

npm install -g webpack webpack-cli
npm run build

最后,构建应该完成,并且文件应该放在superset / assets / dist中。

# Remove node_modules dir as it's no longer needed:
rm -rf node_modules

# cd back to project root
cd ../..

# Just in case install latest pip etc.
# Use python -m pip to avoid a possible issue where some packages
# attempt to write to global python repo..
python -m pip install --upgrade pip setuptools wheel

# Install project python packages
python -m pip install -r requirements.txt -r requirements-dev.txt

# Additionally install pyodbc, if one needs to connect to ms sql
pip install pyodbc

# Install superset in editable mode
pip install -e .

# Compile language files (gettext .po files)
fabmanager babel-compile --target superset/translations

# Append to PYTHONPATH if it already exists.
export PATH=$(pwd):$PATH
if [ -z "$PYTHONPATH" ]
then
    export PYTHONPATH=$(pwd):$PYTHONPATH
else
    export PYTHONPATH=$(pwd)
fi 
# Can also adjust SUPERSET_HOME to store default sqlite db in a different place.
# export SUPERSET_HOME=$(pwd)/superset_home
export MAPBOX_API_KEY=your_mapbox_key...

从这里开始,我们大致遵循RELEASES \ from_tarball_entrypoint.sh:

superset db upgrade

export FLASK_APP=superset
flask fab create-admin
superset load_examples
superset init

启动flask devserver:

superset run -p 8005 --with-threads --reload --debugger

答案 1 :(得分:1)

在安装超集时,我遇到了相同的错误。问题是Windows:我可以按照以下步骤安装python-geohash库:

1)对于Flask-SQLAlchemy,再次安装该库,但指定所需的版本:pip install Flask-SQLAlchemy = 2.1

2)对于python-geohash库:首先从“ Python扩展包的非官方Windows二进制文件”网页https://www.lfd.uci.edu/~gohlke/pythonlibs/#python-geohash下载.whl。 然后,下载满足您的python版本的.whl。然后,使用以下命令安装软件包:

pip install \ .whl

最后,重试安装superset。

最诚挚的问候,

芬尼