发布于 2016-07-24 15:49:27 | 851 次阅读 | 评论: 1 | 来源: PHPERZ
pip Python包安装和管理工具
pip 是一种安装和管理 Python 包的工具。
安装lxml包。执行
pip install lxml
最后竟然又出现了错误。关键错误信息如下:
building 'lxml.etree' extension error: Microsoft Visual C++ 9.0 is required (Unable to find vcvarsall.bat). Get it from http://aka.ms/vcpython27
从 字面意义理解,是需要Microsoft Visual C++ 9.0,而我的电脑中已经安装了Visual Studio 2010了呀。后来在网上查,原来是在windows下使用pip安装包的时候需要机器装有vs2008,别的版本还不行。如果不想安装VS2008,可 以安装Microsoft Visual C++ Compiler for Python 2.7
安装完这个Visual C++的文件后,再次安装lxml,竟然还是错误。不过这次的错误和上一次有所区别,错误提示内容有:
********************************************************************************* Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed? *********************************************************************************
和
src\lxml\includes\etree_defs.h(14) : fatal error C1083: Cannot open include file: 'libxml/xmlversion.h': No such file or directory c:\users\xzfeng\appdata\local\temp\xmlXPathInit0wevj7.c(1) : fatal error C1083: Cannot open include file: 'libxml/xpath.h': No such file or directory
这 个大多是因为在对C代码在编译的时候没有找到对应的文件导致的。简单来说,解决方法要么就安装它提示所缺失的文件,从而使得编译行为可以顺利进行下去;还 有一个方法就是安装.wheel版本,因为该版本是已经prebuild过的版本,在本机上安装已经不需要在重新编译一下了。当然还有更便捷的方法,如下 这篇Stack Overflow上找到的关于这个问题的帖子:点击打开链接 里面有两个解决方法,方法一有一些麻烦,没有去试,应该能解决问题;方法二超级简单,舍弃用pip来安装,直接用easy_install来安装,果然什么问题也没有遇到,很顺利便安装成功了。
easy_install lxml
真是选对了工具能给你节省太多时间了。
此文也有别的解决方法。