BeautifulSoup和Lxml是两个非常流行的python模块,常被用来对抓取到的网页进行解析。
开始的时候安装了beautifulsoup,但当解析器设置为lxml就会报错,语句如下
soup = BeautifulSoup(html.text,"lxml")
当设置为“html.parser”则可以正常解析,折腾了大半天,查阅了网上csdn,stackoverflow的很多帖子,这里大体整理才操作步骤
1.安装beautifulsoup
>pip install beautifulsoup4
2.安装解析器lxml
这一步要注意,一定要先查看Python的版本,根据自己的Python版本以及系统来下载相应的lxml包,强烈建议不要直接使用pip install lxml来安装,因为这时候安装的是最新版本,但却不一定与你的Python版本以及系统兼容。务必下载安装包到指定目录,再使用pip安装。这里我的Python版本是3.6.4,系统是64位,下载的是以下这个包(其中36表示Python的版本3.6,64表示64位)
lxml-4.2.2-cp36-cp36m-win_amd64.whl
下载链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml
如果直接安装lxml,会提示
error: Microsoft Visual C++ 14.0 is required.
解决办法查帖子说是两个:1.安装Microsoft Visual C++ 14.0(这个方法没试过)
2.通过wheel安装
所以这步的安装过程如下:
>pip install wheel
>pip install lxml-4.2.2-cp36-cp36m-win_amd64.whl
到这里,就安装成功了。再使用lxml解析器不会报错了
【小贴士:Python安装其他包的时候,也有可能会报这个错“error: Microsoft Visual C++ 14.0 is required.”。万用解决办法就是根据Python版本及系统位数手动下载安装包到指定目录,再使用pip安装】
最后,安装这两个包如果使用了网上的各种办法依然报错,那最后的办法就是卸载Python3,通过anaconda安装Python来解决了。
网友评论