美文网首页PythonPython应用集Pythoner集中营
Python 安装Mysql模块及安装中错误的解决

Python 安装Mysql模块及安装中错误的解决

作者: Solomon_Xie | 来源:发表于2015-12-14 12:35 被阅读2093次

    初试爬虫之后,各种快感。然后进入到Python练习的下一阶段了——把抓取到的数据存到数据库中。
    再三考虑,还是决定从MySQL开始入手。虽然评论区很多倾向于SQLite及MongoDB等新潮玩意,但是MySQL还是占有决定性的市场。为了适应以后生存,这方面必须得会,就拿它先练手吧。

    我的开发环境是中文win7系统32位, Python 2.7, MySQL 14.4。(Linux在虚拟机里呢,熟练之前先不挑战开发环境了-_-!)
    注意:这里是安装python的mysqldb模块,而不是mysql, 到了这一步它应该是已经安装好了的(包括MySQL ServerMySQL python connector)。

    先检查自己是不是已经安装了这个模块
    极其简单:在Python的命令行中输入import MySQLdb,如果没有报错,那就已经安装了。

    最简单的安装方法

    其实就是随便找个地方按下win+R,输入cmd回车——打开windows命令行,进行著名的pip安装大法

    pip install mysql-python

    按理来说,这一步足够了。但是我这出现了据说在windows环境下python安装模块的痛:命令行里返回了错误:

    error: Unable to find vcvarsall.bat

    然后我想到,是不是在windows用pip不太合适?所以还是循规蹈矩地到Python官网下载了MySQLdb的源文件,即MySQL-python-1.2.5.zip (md5)这个压缩包。
    随便找个地方解压缩,然后以最快的速度在cmd命令行中进入这个目录,输入:

    python setup.py build
    python setup.py install

    按理来说,到这一步就完全成功了。不过,返回的结果是一毛一样的。。。

    error: Unable to find vcvarsall.bat

    然后我就知道了:其实pip安装,和我自己下载源码用python setup.py buildpython setup.py install是一样的效果。
    问题源头还是在vcvarsall.bat这个东西上。一看文件名就知道是和vc相关。
    查询相关资料,说是凡是安装和操作系统底层密切相关的Python扩展,几乎都会遇到这个错误。
    经过搜索,绝大多数的回答都是:需要安装Microsoft Visual Studio2008或者2010版本,才能满足Python在windows系统上安装各种底层扩展的需要。
    正在下载2G的VS中。。。
    不过趁着下载等待时间,我在评论区发现了更easy的方法。。。。

    Paste_Image.png

    打开页面,http://www.lfd.uci.edu/~gohlke/pythonlibs/ 是这个模样:

    Paste_Image.png
    满屏幕毫无美感的英文,连排版都没有,真有点不太好接受。不过趁着VS还没下载完,就简单读了读,发现了第二行关键词:University of California, Irvine.,原来是加大的作品啊,一看就是科学家制作,比较大气,耐着心读了读说明段落——好像是专门针对windows对python支持性差做的工作——把python扩展都制作成了二进制文件,即.whl文件。

    安装二进制的Python扩展包

    看起来好像是个好东西,就ctrl+f查找mysql,还真找到了!

    MySQL-python, a Python database API 2.0 interface for the MySQL database
    Mysqlclient is a Python 3 compatible fork of MySQL-python.
    MySQL_python-1.2.5-cp27-none-win32.whl
    MySQL_python-1.2.5-cp27-none-win_amd64.whl

    选择win32.whl这个文件下载,才772k。
    但是这个whl文件格式怎么安装呢?回到网页上面,发现说了是用pip安装,于是我在这个目录打开cmd命令行,输入:

    Paste_Image.png
    哈哈,献丑了!whl文件的安装方法,在pip的官方文档里说明的很清楚(看这里)
    所以再来了一遍:
    输入:

    pip install MySQL_python-1.2.5-cp27-none-win32.whl
    返回:
    Processing c:\tdownload\mysql\mysql_python-1.2.5-cp27-none-win32.whl
    Installing collected packages: MySQL-python
    Successfully installed MySQL-python-1.2.5

    Paste_Image.png

    安装成功!

    到Python里面试了一下import MySQLdb,也正常!
    于是乎,我觉得写文章的这个功夫,已经下载好的Microsoft Visual Studio也没必要了。。。。

    相关文章

      网友评论

      • 改变把:我下载了MySQL_python-1.2.5-cp27-none-win_amd64.whl这个然后pip install MySQL_python-1.2.5-cp27-none-win_amd64.whl 然后报错是:MySQL_python-1.2.5-cp27-none-win_amd64.whl is not a supported wheel on this platform.这个问题不知道什么鬼
        Solomon_Xie:你的是什么机器?这个错误看起来,安装包是64位,如果你的是32位或ARM架构就不支持了吧
      • 改变把:64位的不就要下载64位的吗
      • 杨涛_7e94:不过发现python3.6并没有这个文件。。
        VirgoZ:python3以上版本用的是mysqlclient

      本文标题:Python 安装Mysql模块及安装中错误的解决

      本文链接:https://www.haomeiwen.com/subject/myluhttx.html