爬虫 (三) anaconda3 入门

2019-12-10 18:58:50 浏览数 (1)

我们知道安装 anaconda3 之后会出现一下几个东东,我们来简单的了解下

1. Anaconda Navigtor :用于管理工具包和环境的图形用户界面,后续涉及的众多管理命令也可以在 Navigator 中手工实现

2. Jupyter notebook :基于web的交互式计算环境,可以编辑易于人们阅读的文档,用于展示数据分析的过程

3. spyder :一个使用Python语言、跨平台的、科学运算集成开发环境

4. qtconsole :一个可执行 IPython 的仿终端图形界面程序,相比 Python Shell 界面,qtconsole 可以直接显示代码生成的图形,实现多行代码输入执行,以及内置许多有用的功能和函数

01

conda --version

上面这个命令主要用于查询 anaconda3 的版本号,现在让我们按住键盘 (Win R),回车(enter),便会出现一个控制台,我们输入 conda --version

代码语言:javascript复制
conda --version

02

activate

activate 能将我们引入anaconda设定的虚拟环境中, 如果你后面什么参数都不加那么会进入anaconda自带的base环境,

你可以输入python试试, 这样会进入base环境的python解释器, 如果你把原来环境中的python环境去除掉会更能体会到, 这个时候在命令行中使用的已经不是你原来的python而是base环境下的python.而命令行前面也会多一个(base) 说明当前我们处于的是base环境下

03

conda create -n learn python=3

代码语言:javascript复制
conda create -n learn python=3

我们当然不满足一个base环境, 我们应该为自己的程序安装单独的虚拟环境.

创建一个名称为learn的虚拟环境并指定python版本为3(这里conda会自动找3中最新的版本下载)

04

conda activate learn

切换环境

代码语言:javascript复制
conda activate learn

推出环境

代码语言:javascript复制
conda deactivate

05

conda env list

代码语言:javascript复制
conda env list

去查看所有的环境

现在的learn环境除了python自带的一些官方包之外是没有其他包的, 一个比较干净的环境我们可以试试

06

conda install package

代码语言:javascript复制
conda install requests

or

代码语言:javascript复制
pip install requests

07

conda list

要查看当前环境中所有安装了的包可以用

07

conda env export > environment.yaml

如果想要导出当前环境的包信息可以用

代码语言:javascript复制
conda env export > environment.yaml
代码语言:javascript复制
name: base
channels:
  - defaults
dependencies:
  - _ipyw_jlab_nb_ext_conf=0.1.0=py37_0
  - alabaster=0.7.12=py37_0
  - anaconda=2019.10=py37_0
  - anaconda-client=1.7.2=py37_0
  - anaconda-navigator=1.9.7=py37_0
  - anaconda-project=0.8.3=py_0
  - asn1crypto=1.0.1=py37_0
  - astroid=2.3.1=py37_0
  - astropy=3.2.1=py37he774522_0
  - atomicwrites=1.3.0=py37_1
  - attrs=19.2.0=py_0
  - babel=2.7.0=py_0
  - backcall=0.1.0=py37_0
  - backports=1.0=py_2
  - backports.functools_lru_cache=1.5=py_2
  - backports.os=0.1.1=py37_0
  - backports.shutil_get_terminal_size=1.0.0=py37_2
  - backports.tempfile=1.0=py_1
  - backports.weakref=1.0.post1=py_1
  - beautifulsoup4=4.8.0=py37_0
  - bitarray=1.0.1=py37he774522_0
  - bkcharts=0.2=py37_0
  - blas=1.0=mkl
  - bleach=3.1.0=py37_0
  - blosc=1.16.3=h7bd577a_0
  - bokeh=1.3.4=py37_0
  - boto=2.49.0=py37_0
  - bottleneck=1.2.1=py37h452e1ab_1
  - bzip2=1.0.8=he774522_0
  - ca-certificates=2019.8.28=0
  - certifi=2019.9.11=py37_0
  - cffi=1.12.3=py37h7a1dbc1_0
  - chardet=3.0.4=py37_1003
  - click=7.0=py37_0
  - cloudpickle=1.2.2=py_0
  - clyent=1.2.2=py37_1
  - colorama=0.4.1=py37_0
  - comtypes=1.1.7=py37_0
  - conda=4.7.12=py37_0
  - conda-build=3.18.9=py37_3
  - conda-env=2.6.0=1
  - conda-package-handling=1.6.0=py37h62dcd97_0
  - conda-verify=3.4.2=py_1
  - console_shortcut=0.1.1=3
  - contextlib2=0.6.0=py_0
  - cryptography=2.7=py37h7a1dbc1_0
  - curl=7.65.3=h2a8f88b_0
  - cycler=0.10.0=py37_0
  - cython=0.29.13=py37ha925a31_0
  - cytoolz=0.10.0=py37he774522_0
  - dask=2.5.2=py_0
  - dask-core=2.5.2=py_0
  - decorator=4.4.0=py37_1
  - defusedxml=0.6.0=py_0
  - distributed=2.5.2=py_0
  - docutils=0.15.2=py37_0
  - entrypoints=0.3=py37_0
  - et_xmlfile=1.0.1=py37_0
  - fastcache=1.1.0=py37he774522_0
  - filelock=3.0.12=py_0
  - flask=1.1.1=py_0
  - freetype=2.9.1=ha9979f8_1
  - fsspec=0.5.2=py_0
  - future=0.17.1=py37_0
  - get_terminal_size=1.0.0=h38e98db_0
  - gevent=1.4.0=py37he774522_0
  - glob2=0.7=py_0
  - greenlet=0.4.15=py37hfa6e2cd_0
  - h5py=2.9.0=py37h5e291fa_0
  - hdf5=1.10.4=h7ebc959_0
  - heapdict=1.0.1=py_0
  - html5lib=1.0.1=py37_0
  - icc_rt=2019.0.0=h0cc432a_1
  - icu=58.2=ha66f8fd_1
  - idna=2.8=py37_0
  - imageio=2.6.0=py37_0
  - imagesize=1.1.0=py37_0
  - importlib_metadata=0.23=py37_0
  - intel-openmp=2019.4=245
  - ipykernel=5.1.2=py37h39e3cac_0
  - ipython=7.8.0=py37h39e3cac_0
  - ipython_genutils=0.2.0=py37_0
  - ipywidgets=7.5.1=py_0
  - isort=4.3.21=py37_0
  - itsdangerous=1.1.0=py37_0
  - jdcal=1.4.1=py_0
  - jedi=0.15.1=py37_0
  - jinja2=2.10.3=py_0
  - joblib=0.13.2=py37_0
  - jpeg=9b=hb83a4c4_2
  - json5=0.8.5=py_0
  - jsonschema=3.0.2=py37_0
  - jupyter=1.0.0=py37_7
  - jupyter_client=5.3.3=py37_1
  - jupyter_console=6.0.0=py37_0
  - jupyter_core=4.5.0=py_0
  - jupyterlab=1.1.4=pyhf63ae98_0
  - jupyterlab_server=1.0.6=py_0
  - keyring=18.0.0=py37_0
  - kiwisolver=1.1.0=py37ha925a31_0
  - krb5=1.16.1=hc04afaa_7
  - lazy-object-proxy=1.4.2=py37he774522_0
  - libarchive=3.3.3=h0643e63_5
  - libcurl=7.65.3=h2a8f88b_0
  - libiconv=1.15=h1df5818_7
  - liblief=0.9.0=ha925a31_2
  - libpng=1.6.37=h2a8f88b_0
  - libsodium=1.0.16=h9d3ae62_0
  - libssh2=1.8.2=h7a1dbc1_0
  - libtiff=4.0.10=hb898794_2
  - libxml2=2.9.9=h464c3ec_0
  - libxslt=1.1.33=h579f668_0
  - llvmlite=0.29.0=py37ha925a31_0
  - locket=0.2.0=py37_1
  - lxml=4.4.1=py37h1350720_0
  - lz4-c=1.8.1.2=h2fa13f4_0
  - lzo=2.10=h6df0209_2
  - m2w64-gcc-libgfortran=5.3.0=6
  - m2w64-gcc-libs=5.3.0=7
  - m2w64-gcc-libs-core=5.3.0=7
  - m2w64-gmp=6.1.0=2
  - m2w64-libwinpthread-git=5.0.0.4634.697f757=2
  - markupsafe=1.1.1=py37he774522_0
  - matplotlib=3.1.1=py37hc8f65d3_0
  - mccabe=0.6.1=py37_1
  - menuinst=1.4.16=py37he774522_0
  - mistune=0.8.4=py37he774522_0
  - mkl=2019.4=245
  - mkl-service=2.3.0=py37hb782905_0
  - mkl_fft=1.0.14=py37h14836fe_0
  - mkl_random=1.1.0=py37h675688f_0
  - mock=3.0.5=py37_0
  - more-itertools=7.2.0=py37_0
  - mpmath=1.1.0=py37_0
  - msgpack-python=0.6.1=py37h74a9793_1
  - msys2-conda-epoch=20160418=1
  - multipledispatch=0.6.0=py37_0
  - navigator-updater=0.2.1=py37_0
  - nbconvert=5.6.0=py37_1
  - nbformat=4.4.0=py37_0
  - networkx=2.3=py_0
  - nltk=3.4.5=py37_0
  - nose=1.3.7=py37_2
  - notebook=6.0.1=py37_0
  - numba=0.45.1=py37hf9181ef_0
  - numexpr=2.7.0=py37hdce8814_0
  - numpy=1.16.5=py37h19fb1c0_0
  - numpy-base=1.16.5=py37hc3f5095_0
  - numpydoc=0.9.1=py_0
  - olefile=0.46=py37_0
  - openpyxl=3.0.0=py_0
  - openssl=1.1.1d=he774522_2
  - packaging=19.2=py_0
  - pandas=0.25.1=py37ha925a31_0
  - pandoc=2.2.3.2=0
  - pandocfilters=1.4.2=py37_1
  - parso=0.5.1=py_0
  - partd=1.0.0=py_0
  - path.py=12.0.1=py_0
  - pathlib2=2.3.5=py37_0
  - patsy=0.5.1=py37_0
  - pep8=1.7.1=py37_0
  - pickleshare=0.7.5=py37_0
  - pillow=6.2.0=py37hdc69c19_0
  - pip=19.2.3=py37_0
  - pkginfo=1.5.0.1=py37_0
  - pluggy=0.13.0=py37_0
  - ply=3.11=py37_0
  - powershell_shortcut=0.0.1=2
  - prometheus_client=0.7.1=py_0
  - prompt_toolkit=2.0.10=py_0
  - psutil=5.6.3=py37he774522_0
  - py=1.8.0=py37_0
  - py-lief=0.9.0=py37ha925a31_2
  - pycodestyle=2.5.0=py37_0
  - pycosat=0.6.3=py37hfa6e2cd_0
  - pycparser=2.19=py37_0
  - pycrypto=2.6.1=py37hfa6e2cd_9
  - pycurl=7.43.0.3=py37h7a1dbc1_0
  - pyflakes=2.1.1=py37_0
  - pygments=2.4.2=py_0
  - pylint=2.4.2=py37_0
  - pyodbc=4.0.27=py37ha925a31_0
  - pyopenssl=19.0.0=py37_0
  - pyparsing=2.4.2=py_0
  - pyqt=5.9.2=py37h6538335_2
  - pyreadline=2.1=py37_1
  - pyrsistent=0.15.4=py37he774522_0
  - pysocks=1.7.1=py37_0
  - pytables=3.5.2=py37h1da0976_1
  - pytest=5.2.1=py37_0
  - pytest-arraydiff=0.3=py37h39e3cac_0
  - pytest-astropy=0.5.0=py37_0
  - pytest-doctestplus=0.4.0=py_0
  - pytest-openfiles=0.4.0=py_0
  - pytest-remotedata=0.3.2=py37_0
  - python=3.7.4=h5263a28_0
  - python-dateutil=2.8.0=py37_0
  - python-libarchive-c=2.8=py37_13
  - pytz=2019.3=py_0
  - pywavelets=1.0.3=py37h8c2d366_1
  - pywin32=223=py37hfa6e2cd_1
  - pywinpty=0.5.5=py37_1000
  - pyyaml=5.1.2=py37he774522_0
  - pyzmq=18.1.0=py37ha925a31_0
  - qt=5.9.7=vc14h73c81de_0
  - qtawesome=0.6.0=py_0
  - qtconsole=4.5.5=py_0
  - qtpy=1.9.0=py_0
  - requests=2.22.0=py37_0
  - rope=0.14.0=py_0
  - ruamel_yaml=0.15.46=py37hfa6e2cd_0
  - scikit-image=0.15.0=py37ha925a31_0
  - scikit-learn=0.21.3=py37h6288b17_0
  - scipy=1.3.1=py37h29ff71c_0
  - seaborn=0.9.0=py37_0
  - send2trash=1.5.0=py37_0
  - setuptools=41.4.0=py37_0
  - simplegeneric=0.8.1=py37_2
  - singledispatch=3.4.0.3=py37_0
  - sip=4.19.8=py37h6538335_0
  - six=1.12.0=py37_0
  - snappy=1.1.7=h777316e_3
  - snowballstemmer=2.0.0=py_0
  - sortedcollections=1.1.2=py37_0
  - sortedcontainers=2.1.0=py37_0
  - soupsieve=1.9.3=py37_0
  - sphinx=2.2.0=py_0
  - sphinxcontrib=1.0=py37_1
  - sphinxcontrib-applehelp=1.0.1=py_0
  - sphinxcontrib-devhelp=1.0.1=py_0
  - sphinxcontrib-htmlhelp=1.0.2=py_0
  - sphinxcontrib-jsmath=1.0.1=py_0
  - sphinxcontrib-qthelp=1.0.2=py_0
  - sphinxcontrib-serializinghtml=1.1.3=py_0
  - sphinxcontrib-websupport=1.1.2=py_0
  - spyder=3.3.6=py37_0
  - spyder-kernels=0.5.2=py37_0
  - sqlalchemy=1.3.9=py37he774522_0
  - sqlite=3.30.0=he774522_0
  - statsmodels=0.10.1=py37h8c2d366_0
  - sympy=1.4=py37_0
  - tbb=2019.4=h74a9793_0
  - tblib=1.4.0=py_0
  - terminado=0.8.2=py37_0
  - testpath=0.4.2=py37_0
  - tk=8.6.8=hfa6e2cd_0
  - toolz=0.10.0=py_0
  - tornado=6.0.3=py37he774522_0
  - tqdm=4.36.1=py_0
  - traitlets=4.3.3=py37_0
  - unicodecsv=0.14.1=py37_0
  - urllib3=1.24.2=py37_0
  - vc=14.1=h0510ff6_4
  - vs2015_runtime=14.16.27012=hf0eaf9b_0
  - wcwidth=0.1.7=py37_0
  - webencodings=0.5.1=py37_1
  - werkzeug=0.16.0=py_0
  - wheel=0.33.6=py37_0
  - widgetsnbextension=3.5.1=py37_0
  - win_inet_pton=1.1.0=py37_0
  - win_unicode_console=0.5=py37_0
  - wincertstore=0.2=py37_0
  - winpty=0.4.3=4
  - wrapt=1.11.2=py37he774522_0
  - xlrd=1.2.0=py37_0
  - xlsxwriter=1.2.1=py_0
  - xlwings=0.15.10=py37_0
  - xlwt=1.3.0=py37_0
  - xz=5.2.4=h2fa13f4_4
  - yaml=0.1.7=hc54c509_2
  - zeromq=4.3.1=h33f27b4_3
  - zict=1.0.0=py_0
  - zipp=0.6.0=py_0
  - zlib=1.2.11=h62dcd97_3
  - zstd=1.3.7=h508b16e_0
prefix: D:Anaconda3

导入信息

代码语言:javascript复制
conda env create -f environment.yaml

08

more

代码语言:javascript复制
activate // 切换到base环境

activate learn // 切换到learn环境

conda create -n learn python=3 // 创建一个名为learn的环境并指定python版本为3(的最新版本)

conda env list // 列出conda管理的所有环境

conda list // 列出当前环境的所有包

conda install requests 安装requests包

conda remove requests 卸载requets包

conda remove -n learn --all // 删除learn环境及下属所有包

conda update requests 更新requests包

conda env export > environment.yaml // 导出当前环境的包信息

conda env create -f environment.yaml // 用配置文件创建新的虚拟环境

08

与 pyCharm 链接

在工作环境中我们会集成开发环境去编码, 这里推荐JB公司的pycharm, 而pycharm也能很方便的和anaconda的虚拟环境结合

Setting => Project => Project Interpreter 里面修改 Project Interpreter , 点击齿轮标志再点击Add Local为你某个环境的python.exe解释器就行了

比如你要在learn环境中编写程序, 那么就修改为D:SoftwareAnacondaenvslearn, 可以看到这时候下面的依赖包也变成了learn环境中的包了.接下来我们就可以在pycharm中愉快的编码了.

结语

现在你是不是发现用上anaconda就可以十分优雅简单的解决上面所提及的单个python环境所带来的弊端了呢, 而且也明白了其实这一切的实现并没有那么神奇.

当然anaconda除了包管理之外还在于其丰富数据分析包, 不过那就是另一个内容了, 我们先学会用anaconda去换一种方法管里自己的开发环境, 这已经是一个很大的进步了

0 人点赞