lxml官方吹牛说它是Python中功能最全、最易用的XML和HTML的解析器。 html
wget https://bootstrap.pypa.io/ez_setup.py -O - | python
参考:https://pypi.python.org/pypi/setuptools python
sudo apt-get install python-setuptools python-pip
sudo apt-get install python2.7-lxml python3-lxml
参考:http://lxml.de/installation.html linux
easy_install pyquery
若是直接使用pip或者easy_install安装,可能会出现一系列错误,例如: git
sudo apt-get install libxml2 libxslt1.1 libxml2-dev libxslt1-dev python-libxml2 python-libxslt1 python-dev python-setuptools libxslt-dev zlib1g-dev easy_install lxml || pip install lxml
但我试过以后无一成功(多是系统及环境不一样)… sql
总结了一下失败的缘由,主要是如下依赖包未安装,或者系统swap不够所致: shell
yum install libxslt-devel libxml2-devel libxsltl libxml python-dev
但其实直接用apt-get安装lxml的时候发现它仅仅依赖于:libxml二、libxslt1.1, bootstrap
况且这仍是官方推荐的安装方法。。所以遇到问题,找官网比先摆渡好。 ubuntu
参考:pip install lxml error、Installing lxml with pip... python2.7
模块pymssql安装依赖于freetds,这确实是一个败笔,也是python对SQLServer支持如此之差的一个重要缘由。
安装过程同上面的lxml同样跌宕起伏,主要缘由出在freetds上。参考国外某大神的博文后解决:
Troubleshooting pymssql installation on Ubuntu,过程以下:
easy_install pymssql
若是上面这条命令执行成功了,那么能够跳过下文……
不然,请先下载pymssql源码:
wget -q https://github.com/pymssql/pymssql/archive/master.zip unzip -q master.zip cd master sudo python setup.py install
若是出现错误提示:Error: _mssql.c:8:22: fatal error: pyconfig.h: No such file or directory
sudo apt-get install python-dev
若是还报错: Error: _mssql.c:314:22: fatal error: sqlfront.h: No such file or directory
sudo apt-get install freetds-dev
而后再安装setup.py 就OK了!
事实证实本案的关键在于:Python和 freeTDS 的开发包是否安装。
最后,只能用一句做者的原话来表达个人心情:
Installing pymssql on Ubuntu 13.10 was not an easy task.
深表赞成。与本人的经历一模一样。
Python跨平台相比Java跨平台的一大劣势是,不少py模块依赖或绑定部分linux下的C-Lib包,
譬如上文所述的libxml、libxslt以及freetds,expect之于Pexpect 等等;
虽然Java中也有很多Native实现,但基本上跨平台兼容性都比较好。