楼主走投无路了,请问 BeautifulSoup 种是用 lxml 的正确姿势?

2016-11-25 22:11:21 +08:00
 Ginson

最近用在用 BeautifulSoup ,想安装其官方推荐的 html 解析器
lxml 安装很顺利,但是使用时报错,报错信息如下

我到 BeautifulSoup 文档里面没有找到如何使用的信息,在 lxml 官网也没找到答案,只能腆着脸来 V2 问了
请大家指教

python版本是 3.5.2

3697 次点击
所在节点    Python
16 条回复
janstk
2016-11-25 22:14:04 +08:00
python3 python2 。?
Ginson
2016-11-25 22:15:14 +08:00
@janstk python 版本是 3.5.2
Zzzzzzzzz
2016-11-25 22:20:21 +08:00
错一是装的是 python2 的 lxml, 而跑的是 python3, 装 python3 版的是 python3-lxml
错二是跑的是 virtualenv 创建的环境, virtualenv 默认创建的环境不会用到 apt 安装的系统级的三方包, 你该 pip install lxml
jimzhong
2016-11-25 22:23:55 +08:00
推荐使用 virtualenv
neo1218
2016-11-25 22:28:20 +08:00
我 pip install lxml==3.4.2 是好的
Ginson
2016-11-25 22:38:06 +08:00
@Zzzzzzzzz 我按您说的,在虚拟环境内 pip install lxml
但是出现一大堆报错,其中有一条似乎是说我 libxml2 没安装
但是我有安装的…难道是因为我在 virtualenv 的问题?
Ginson
2016-11-25 22:39:07 +08:00
@jimzhong 感谢建议,我用的就是 virtualenv
你看我命令提示符前面有个 py3env ,表示我正在 virtualenv 中
Ginson
2016-11-25 22:39:48 +08:00
@neo1218 难道是我相关依赖没装全吗? gcc make 什么的我都装了啊
Zzzzzzzzz
2016-11-25 22:43:40 +08:00
@Ginson apt 装 libxml2-dev libxslt1-dev
Ginson
2016-11-25 22:46:01 +08:00
@Zzzzzzzzz 谢谢!
装了这两个再 pip install lxml 就成功了!
jimzhong
2016-11-25 23:05:35 +08:00
@Ginson 没注意到。如果你用了 venv 就不应该使用系统的 apt 安装包
Ginson
2016-11-25 23:06:48 +08:00
@jimzhong 其实我一直很懵逼,哪些应该用 pip 安装,哪些应该用 apt-get 安装
jimzhong
2016-11-25 23:10:06 +08:00
@Ginson 用了 venv 就全部用 pip 吧,或者自己下载 tar.gz ,用 python setup.py install
apt 装的包 venv 是不会用的
tulongtou
2016-11-26 12:10:26 +08:00
@Ginson 那你需要装 libxml2
Ginson
2016-11-29 17:00:05 +08:00
日了狗,今天在公司电脑上用同样的方法又不行
为什么总是要困在这种问题上…
Ginson
2016-11-29 17:05:12 +08:00
原来还需要 sudo apt-get install zlib1g-dev

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/323360

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX