http://blog.csdn.net/tiantiancsdn/article/details/51046490(转载)

Python及bs4、lxml、numpy模块包的安装

Python 的安装:

python的安装比较简单,直接在官网下载相应版本,然后双击安装 
注意:下载时勾选安装pip和添加到PATH路径

安装 pip:

Python2.7.9 和3.4以上的版本默认安装了pip,但是需要upgrading才能使用:

在cmd 命令行,cd 转到对应python的安装目录,输入命令:python -m pip install -U pip

等一会就会出现安装成功的提示!

安装easy_install:

为什么要装easy_install?

正常情况下给Python安装第三方扩展包,必须先下载压缩包,解压缩到一个目录,然后在命令行转到这个目录,执行 python setup.py install 来进行安装。

这样比较繁琐,如果直接命令行执行 easy_install XX,最新版的扩展包就装上去了。

所以easy_install就是为了更容易地安装第三方扩展包

怎么安装?

首先在这里找到对应版本,Unix或Windows等。 
我的是windows10 (带powershell), 于是能看到下面这句话:

The recommended way to install setuptools on Windows is to download ez_setup.py and run it. The script will download the appropriate distribution file and install it for you.

右击 ez_setup.py 下载保存

以管理员身份运行shell,切换到对应保存这个.py文件的目录(我是将ez_setup.py保存在python的安装目录下),输入命令:python ez_setup.py install

然后就可以看到安装成功!

安装 beautifulsoup:

在 cmd 命令行,转到对应python安装目录,输入命令:pip3 install beautifulsoup4

然后就看到安装成功!

注意:我是在python3下安装的bs4,所以用的pip3,python2下用pip就好。

安装lxml:

lxml是Python中与XML及HTML相关功能中最丰富和最容易使用的库。lxml并不是Python自带的包,而是为libxml2和libxslt库的一个Python化的绑定。它与众不同的地方是它兼顾了这些库的速度和功能完整性,以及纯Python API的简洁性,与大家熟知的ElementTree API兼容但比之更优越。

但安装lxml却又有点麻烦,因为存在依赖,直接用easy_install, pip都不能成功。直接运行 pip install lxml 报错:Unable to find vcvarsall.bat.

解决方法:

  1. 安装wheel,命令行运行: 
    pip install wheel

  2. 在这里下载对应的.whl文件(比如我的是python35、win64位,我选择 lxml-3.6.0-cp35-cp35m-win_amd64.whl)

  3. 在shell输入命令:pip install lxml-3.6.0-cp35-cp35m-win_amd64.whl 即可完成安装。

numpy安装:

在我没安装pip之前,直接下载sources安装不成功,报错:no module named 'numpy.distutils’。在网上找了很多也没解决。

至于原因,尚不清楚。网上说应该是什么编译没下载,说下载mingw。 
另外说可以在这里直接下载预编译的numpy,可以省去很多麻烦。

但是安装完pip后,很简单的 pip install numpy 就安装成功了! 
之前还费了好长时间,简直不值!

总之,我想说:pip真的好用!这样完全没必要一个个去网上找安装包,省去很多麻烦!

Python及bs4、lxml、numpy模块包的安装的更多相关文章

  1. Python札记 -- 使用easy_install进行模块/包管理

    今天在阅读以前项目代码时,发现里面使用的第三方模块的参数相当诡异,总是对不上.经过分析之后,发现是自己安装的第三方模块跟项目使用的版本不一致.在Python中进行模块/包管理的话,就不得不提到easy ...

  2. Python模块/包/库安装几种方法(转载)

    一.方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包(压缩文件zip或tar.gz),进行解压,CMD->cd进入模 ...

  3. 吴裕雄--天生自然 R语言开发学习:模块\包的安装命令

    install.packages('模块包名称') 或者 install.packages('模块包名称',repos='http://cran.us.r-project.org')

  4. Python学习(六)模块 —— 包

    Python 包 包 定义 为了组织好模块,会将多个模块分为包.Python 处理包也是相当方便的.简单来说,包就是文件夹,但该文件夹下必须存在 __init__.py 文件. 常见的包结构如下:

  5. Python学习笔记5:模块/包

    1.模块 模块简单理解就是一组功能的集合. 在Python中,一个文件(.py)就是一个模块,文件名即模块名. 模块的好处是大大提高代码的可维护性,其次,代码不必从零开始.当一个模块编写完毕,就可以被 ...

  6. 使用easy_install进行模块/包管理

    使用easy_install进行模块/包管理 今天在阅读以前项目代码时,发现里面使用的第三方模块的参数相当诡异,总是对不上.经过分析之后,发现是自己安装的第三方模块跟项目使用的版本不一致.在Pytho ...

  7. python矩阵运算大全(linalg模块)

    python矩阵的运算大全 python矩阵运算可以用numpy模块,也可以用scipy模块,主要运算包括以下几种: #1-1python矩阵运算所需模块 import numpy as npimpo ...

  8. Python操作数据库及hashlib模块

    一.hashlib模块 hashlib模块,主要用于加密相关的操作,在python3的版本里,代替了md5和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA51 ...

  9. 【Python 数据分析】Numpy模块

    Numpy模块可以高效的处理数据,提供数组支持.很多模块都依赖他,比如:pandas.scipy.matplotlib 安装Numpy 首先到网站:https://www.lfd.uci.edu/~g ...

随机推荐

  1. Mac下eclipse的快捷键

    一.Command类 Command+1 快速修复 Command+d 删除当前行 Command+Option+↓ 复制当前行到下一行 Command+Option+↑ 复制当前行到上一行 Comm ...

  2. jstat监控gc情况

    jstat监控gc情况 JavaJVMJ2SE应用服务器SUN  性能测试过程中,我们该如何监控java虚拟机内存的使用情况,用以判断JVM是否存在内存问题呢?如何判断JVM垃圾回收是否正常?一般的t ...

  3. android DHCP流程【转】

    本文转载自:http://blog.csdn.net/myvest/article/details/51483647 版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   1 ...

  4. codeforces 467B Fedor and New Game 解题报告

    题目链接:http://codeforces.com/contest/467/problem/B 题目意思:有 m + 1 个 player 和 n 种类型的 soldiers.每个player被赋予 ...

  5. Git基本用法2

    二.比较内容 1.比较提交 - Git Diff 现在我们对项目做些修改: $ cd gitproject # 向README文件添加一行 $ echo "new line" &g ...

  6. 启动jmeter报错

    启动jmeter.bat时报错

  7. hdu-5670 Machine(水题附上java代码)

    题目链接: Machine  Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 65536/65536 K (Java/Others) 问题描 ...

  8. node process-进程

    process对象是一个全局变量,提供Node.js进程的有关信息以及控制进程.因为是全局变量所以可以直接使用

  9. layui 复选框checkbox 全选写法

    前语:本来我是不想写layui框架的博客的,有的时候数据经过layui渲染后原生的写法就取不到值了,一定要用它框架的写法,实在蛋疼,故写之,以后用到可以省点时间去度娘! HTML: <div i ...

  10. Servlet执行过程

    servlet生命周期: Servlet对象是在第一次访问时由容器创建,并完成初始化工作. 对于用户的多次请求,都会调用service为您服务,而不会再创建新的对象. 当应用被写在或者Tomcat关闭 ...