为什么python Xpath 查找 html 元素不起作用
在用python 去抓取网页信息的时候,用到 xpath 去遍历查找html 元素,但有时同样的 html 文件和同样的xpath 逻辑代码,一个能正常出结果另一个却啥也没输出。
我使用的是 lxml 包下的xpath功能,我的 python 逻辑代码之前能正常通过xpath 获取想要的网页信息(如下图),
但是后来我重构了python 项目,为项目新建一个虚拟python 环境,然后在虚拟环境下重新直接安装 lxml,在虚拟环境下执行同样的代码就得不到想要的结果,这时候就严重怀疑是环境问题或者是python 包的版本问题。
通过查看项目关联的解析器,之前在全局环境中python3.6 下的 lxml 包的版本是4.6.1(如下图),
而在虚拟环境中项目的解析器下的 lxml 版本是 4.9.2 。
所以我先删除虚拟环境中的 lxml 再重新安装 版本4.6.1的:
再次运行虚拟环境下的逻辑代码,xpath 能正常输出结果了,问题是我们怎么知道不同版本的python 包会有这些怪异的影响呢,可能只能靠经验或多调试。
编辑于 2023-01-04 12:18
・IP 属地北京