无论是使用爬虫框架scrapy,还是简单的requests请求后解析。都不可避免的需要使用html解析库。
当然正则是可以代替一部分搜索。由于正则语法的晦涩,及其其他场景下,html解析是必不可少的。
网上推荐 lxml的比较多,优点:稳定,高效
但是lxml的安装很难一次成功
pip install lxml
如果没报错,那真是烧高香。。。
windows下可以下载wheel文件,并在下载目录执行 pip install
/~gohlke/pythonlibs/#lxml
通常提示缺少libxml2,这是系统自带的版本太低。需要升级libxml2
ubuntu 下 apt-get install libxml2-dev libxslt-dev python-dev
centos 下 yum install libxml2-dev libxslt-dev python-dev
如果这样还不行,可以下载源代码,本地编译。
于是我就遇到这样操蛋的问题 error: command 'gcc' failed with exit status 1
环境:搬瓦工的256M内存,因为内存不够,每次便宜调用gcc 就被系统干掉,而且版瓦工采用的OpenVZ架构,除非重新换机房,否则不能添加临时swap.
方法一:找一个环境相同的系统,将lxml编译成一个wheel,拷贝过去安装。
这个法不行,手头没有这样的环境。
于是乎我直接粗暴的吧本地的lxml这个在site-packet文件夹下的包copy过去了。
结果程序运行了。。。。