Anaconda 安装和配置

1. Anaconda 安装

Anaconda说明及安装过程Anaconda详细安装使用教程

Anaconda环境变量配置配置环境变量

2. Anaconda和Pip源修改

  • Anaconda源修改:打开Anaconda Prompt后,输入以下代码。

    conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    conda config --set show_channel_urls yes
  • Pip源修改:在本地User用户目录新建pip目录,然后新建pip.ini文件,编辑如下代码后保存。
    [global]
    index-url = https://pypi.tuna.tsinghua.edu.cn/simple

3. Anaconda常用命令

3.1 模块迁移

  • 当前环境安装的所有模块信息导出到名为requirements.txt文件中,该文件存放在当前用户目录下

    pip freeze > requirements.txt
  • 新环境中根据requirements.txt文件来安装模块。
    pip install -r C:\Users\XXX\requirements.txt

3.2 环境创建、激活和退出

  • 创建环境

    conda create -n env_name package_name=version
  • 激活环境

    (base) C:\Users\Administrator>activate superset

    (superset) C:\Users\Administrator>

  • 列出环境
    (base) C:\Users\Administrator>conda env list
    # conda environments:
    #
    base * D:\ProSoftwares\Python\Anaconda3
    python36 D:\ProSoftwares\Python\Anaconda3\envs\python36
    superset D:\ProSoftwares\Python\Anaconda3\envs\superset
  • 退出环境
    (superset) C:\Users\Administrator>conda deactivate
    
    (base) C:\Users\Administrator>

3.3 克隆环境

使用该方法,可以重命名环境:

(base) C:\Users\Administrator>conda create -n analysis --clone python36

然后删除原来的环境即可:

(base) C:\Users\Administrator>conda remove -n python36 --all

4. Anaconda安装superset环境(在线)

4.1 创建隔离环境

(base) C:\Users\Administrator>conda activate -n superset python==3.6

创建一个隔离环境,防止和其它环境的包发生冲突。

4.2 安装VC++需求文件

进入superset环境后,尝试用pip install superset命令直接安装,最后提示Failed to build superset python-geohash错误,缺少编译环境,并提示下载:

error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools

上述下载地址失效,使用VC++14.0安装教程进行安装。安装完成后,重新使用pip install superset命令安装superset,则可正常安装:

Successfully installed cchardet-2.1.4 et-xmlfile-1.0.1 ijson-2.3 jdcal-1.4.1 jsonlines-1.2.0 linear-tsv-1.1.0 openpyxl-2.4.11 pure-sasl-0.6.1 python-geohash-0.8.5 rfc3986-1.3.1 simplejson-3.16.0 sqlalchemy-utils-0.33.11 sqlparse-0.3.0 superset-0.28.1 tableschema-1.4.1 tabulator-1.20.0 thrift-0.11.0 thrift-sasl-0.3.0 unicodecsv-0.14.1 unidecode-1.0.23 xlrd-1.2.0

4.3 配置superset

  • 创建superset管理员账号

    (superset) C:\Users\Administrator>fabmanager create-admin --app superset
    fabmanager is going to be deprecated in 2.2.X, you can use the same commands on the improved 'flask fab <command>'
    Username [admin]: admin
    User first name [admin]: Strive
    User last name [user]: Py
    Email [admin@fab.org]: strive@qq.com
    Password:
    Repeat for confirmation:
    Was unable to import superset Error: cannot import name '_maybe_box_datetimelike'

    出现Was unable to import superset Error: cannot import name '_maybe_box_datetimelike'错误,原因是pandas版本(0.24.2)太高,卸载重装0.23.4版本:

    pip uninstall pandas
    
    pip install pandas==0.23.4

    再进行管理员账号创建:

    (superset) C:\Users\Administrator>fabmanager create-admin --app superset
    fabmanager is going to be deprecated in 2.2.X, you can use the same commands on the improved 'flask fab <command>'
    Username [admin]: admin
    User first name [admin]: Strive
    User last name [user]: Py
    Email [admin@fab.org]: strive@qq.com
    Password:
    Repeat for confirmation:
    Recognized Database Authentications.
    Admin User admin created.
  • 初始化数据库需要使用python superset命令,该命令需要进入superset包的bin目录(D:\ProSoftwares\Python\Anaconda3\envs\superset\Lib\site-packages\superset\bin)下执行:

    (superset) D:\ProSoftwares\Python\Anaconda3\envs\superset\Lib\site-packages\superset\bin>python superset
    Usage: superset [OPTIONS] COMMAND [ARGS]... This is a management script for the superset application. Options:
    --version Show the flask version
    --help Show this message and exit. Commands:
    db Perform database migrations.
    export_dashboards Export dashboards to JSON
    export_datasource_schema Export datasource YAML schema to stdout
    export_datasources Export datasources to YAML
    fab FAB flask group commands
    flower Runs a Celery Flower web server Celery Flower...
    import_dashboards Import dashboards from JSON
    import_datasources Import datasources from YAML
    init Inits the Superset application
    load_examples Loads a set of Slices and Dashboards and a...
    load_test_users Loads admin, alpha, and gamma user for...
    refresh_druid Refresh druid datasources
    run Runs a development server.
    runserver Starts a Superset web server.
    shell Runs a shell in the app context.
    update_datasources_cache Refresh sqllab datasources cache
    version Prints the current version number
    worker Starts a Superset worker for async SQL query...
  • 使用python superset db upgrade命令更新数据库,出现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.3.3)本太高,卸载重装1.2.0版本,就可以成功进行数据库更新操作。
  • 使用python superset load_examples命令加载样例模板。
  • 使用python superset init命令初始化用户角色和权限。
  • 使用python superset runserver 命令启动服务报错,原因是superset使用gunicorn作为应用程序服务器,而gunicorn不支持windows,命令行中添加-d,使用development web server运行。最终运行命令为:python superset runserver -d

最后在浏览器中访问:localhost:8088就可以打开superset登录页面。

4.4 Superset数据库查询报错

因为superset是为Linux和Mac服务的,Windows下缺失某些系统依赖包,所以进行数据库查询时,会提示'Module 'signal' has no attribute 'SIGALRM',并且查询不到数据,解决办法是修改superset安装目录下的utils.py(D:\ProSoftwares\Python\Anaconda3\envs\superset\Lib\site-packages\superset\utils.py)文件中关于signal提示的代码。用文本编辑器打开utils.py,找到如下代码:

    def __enter__(self):
try:
signal.signal(signal.SIGALRM, self.handle_timeout)
signal.alarm(self.seconds)
except ValueError as e:
logging.warning("timeout can't be used in the current context")
logging.exception(e) def __exit__(self, type, value, traceback):
try:
signal.alarm(0)
except ValueError as e:
logging.warning("timeout can't be used in the current context")
logging.exception(e)

然后将代码修改为:

    def __enter__(self):
try:
# signal.signal(signal.SIGALRM, self.handle_timeout)
# signal.alarm(self.seconds)
pass
except ValueError as e:
logging.warning("timeout can't be used in the current context")
logging.exception(e) def __exit__(self, type, value, traceback):
try:
# signal.alarm(0)
pass
except ValueError as e:
logging.warning("timeout can't be used in the current context")
logging.exception(e)

然后刷新superset即可。

5 Anaconda安装Superset环境(离线)

由于在线安装出现的问题太多,所以采取离线手动安装的方式。

5.1 使用Pip安装依赖包

在Github源码中找到依赖包文件requirements.txt

然后使用Pip安装依赖包:

pip install -r C:\Users\XXX\requirements.txt

如果中途发生版本不匹配问题,修改对应包版本再继续安装即可。

5.2 使用Pip安装Superset离线包

在官网下载superset-0.34.0安装包

然后使用Pip安装superset包:

pip install C:\Users\XXX\apache-superset-0.34.0.tar.gz

5.3 配置Superset

基本参考在线安装,需要注意:

  • 设置用户名时不能设置admin,会提示唯一字段重复的sql错误。
  • 启动服务时,在bin目录内使用命令python superset run即可。

5.4 Superset数据库查询报错

因为superset是为Linux和Mac服务的,Windows下缺失某些系统依赖包,所以进行数据库查询时,会提示'Module 'signal' has no attribute 'SIGALRM',并且查询不到数据,解决办法是修改superset安装目录下的core.py(D:\Prosoftwares\Python\Anaconda3\envs\superset\Lib\site-packages\superset\utils\core.py)中关于signal提示的代码(579行),按照4.4修改后,重启服务即可。

6 参考资料

Anaconda 安装和配置的更多相关文章

  1. 面向的phthon2+3 的场景,Anaconda 安装+环境配置+管理

    standard procedure in pyCharm for creating environment when Anaconda installed Create a conda env vi ...

  2. Anaconda 安装后配置环境变量

    Anaconda 安装后在 cmd 中运算 python 无效, 是环境变量没有生效.正常安装需要有三个,配置好就行. D:\xwapp\ProgramData\Anaconda3 D:\xwapp\ ...

  3. Anaconda安装及配置

    简介 Anaconda(官方网站)指的是一个开源的Python发行版本,可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本.Anaconda包含了conda.Python在内的超过18 ...

  4. Python科学计算的瑞士军刀——Anaconda 安装与配置

    Introduce Python是一种强大的编程语言.其提供了非常多用于科学计算的模块,常见的包含numpy.scipy和matplotlib.要利用Python进行科学计算.就须要一一安装所需的模块 ...

  5. Pycharm+Anaconda安装及配置

    Pycharm是一款功能非常强大的IDE,配合Anaconda使用会非常的方便. 在安装Pycharm之前,我们的电脑上已经安装了Anaconda. 我们从官网下载Pycharm社区版.(https: ...

  6. anaconda安装和配置和基本使用

    conda是个商业化公司,所以没有授权不能随便建立其镜像.虽说说的是发邮件询问基本上就能够拿到授权,然而现实是国内的各大开源镜像站都拿不到. 这个事情最近有进展了. 清华大学的镜像源已经拿到授权了 ( ...

  7. 从零开始安装搭建win10与ubuntu20.04双系统开发环境——集安装、配置、软件、美化、常见问题等于一体的——超详细教程

    目录 **前言 ** 关于系统安装配置与软件安装 一.Win10安装ubuntu20.04双系统 1.按照自己的需求分区 2.配置软件镜像源 软件包管理工具介绍 更换APT源--使用国内镜像 3.解决 ...

  8. Ubuntu环境下Anaconda安装TensorFlow并配置Jupyter远程访问

    本文主要讲解在Ubuntu系统中,如何在Anaconda下安装TensorFlow以及配置Jupyter Notebook远程访问的过程. 在官方文档中提到,TensorFlow的安装主要有以下五种形 ...

  9. Windows中Anaconda,Tensorflow 和 Pycharm的安装和配置

    Anaconda完全入门指南 https://www.jianshu.com/p/eaee1fadc1e9                 [安装不要按此条链接进行] Windows中 Anacond ...

随机推荐

  1. 螺旋填数:读入两个整数m,n,输出一个m行n列的矩阵,这个矩阵是1~m*n这些自然数按照右、下、左、上螺旋填入的结果。

    package Day8_06; /*读入两个整数m,n,输出一个m行n列的矩阵,这个矩阵是1~m*n这些自然数按照右.下.左.上螺旋填入的结果. * 例如读入数字4,5,则输出结果为: * 1 2 ...

  2. [Java.Web]从零开始布署 Tomcat

    1. 下载 JRE 1.7 2. 下载 Tomcat 7.0.77,我使用的是红圈的压缩包版本,也可以使用绿圈的安装包版本[更省心] 3. 加入环境变量 JRE_HOME .CATALINA_HOME ...

  3. WebStorm ES6 语法支持设置

    ECMAScript 6是JavaScript语言的下一代标准,已经在2015年6月正式发布了.Mozilla公司将在这个标准的基础上,推出JavaScript 2.0.ES6的目标,是使得JavaS ...

  4. Spring的常用下载地址

    第一种,简单粗暴直接 1 http://repo.springsource.org/libs-release-local/org/springframework/spring/3.2.4.RELEAS ...

  5. 【BZOJ】2006: [NOI2010]超级钢琴(前缀和+RMQ+堆)

    题目 传送门:QWQ 分析 又不会做....... 显然很好想到前缀和处理一下. 然后考虑最大化结果,直接上st表. 问题来了,然后呢? 怎么做$ length \in [l,r]  $ 呢? 正解是 ...

  6. 深入浅出 Java Concurrency (14): 锁机制 part 9 读写锁 (ReentrantReadWriteLock) (2)

      这一节主要是谈谈读写锁的实现. 上一节中提到,ReadWriteLock看起来有两个锁:readLock/writeLock.如果真的是两个锁的话,它们之间又是如何相互影响的呢? 事实上在Reen ...

  7. django之设置缓存

    缓存 一句话总结:缓存可以对view.模板.数据进行缓存可以设置缓存在不同的地方(本地内存.redis.系统文档)可以为服务器节省性能.减少用户等待时间. 对于中等流量的网站来说,尽可能地减少开销是必 ...

  8. jQuery基本API小结(下)---工具函数-基本插件

    一.工具函数 1.获取浏览器的名称与版本信息 在jQuery中,通过$.browser对象可以获取浏览器的名称和版本信息,如$.browser.chrome为true,表示当前为Chrome浏览器,$ ...

  9. AE 遍历栅格实现栅格重分类(C#实现)

    下面要讲的种重分类方法,网上很多.但是好像 System.Array pSafeArray = pPixelBlock.get_SafeArray(0) as System.Array;这一句一直报下 ...

  10. WPF DataGrid 控件的运用

    WPF DataGrid 控件的运用 运行环境:Window7 64bit,.NetFramework4.61,C# 6.0: 编者:乌龙哈里 2017-02-23 参考: King Cobra 博客 ...