Python:ImportError:无法在unix上导入名称etree

时间:2014-09-23 10:18:43

标签: python lxml

1.我正在使用Python 2.6.6
2.Downloaded BeautifulSoaup和lxml外部解析器,解压缩并提取bs4和lxml文件夹。
3.编写link.py如下

#! /usr/bin/python

from bs4 import BeautifulSoup
from urllib import urlopen
from lxml import etree

webpage = urlopen('http://www.google.com')
soup=BeautifulSoup(webpage, "lxml")
for link in soup.find_all('a'):
print(link.get('href'))

运行./link.py时出现以下错误:

Traceback (most recent call last):
  File "./link.py", line 5, in <module>
    from lxml import etree
ImportError: cannot import name etree

2 个答案:

答案 0 :(得分:1)

微软服务器 Spyder IDE Python 3.7 和 Python 3.9

记录这一点,因为我在 Google/StackOverflow 等上的任何地方都找不到解决方案。

关于 SharePlum、SharePoint 集成、问题

从 lxml 导入导入 etree 导入错误:无法导入名称 etree

我在尝试将 SharePlum 与 Spyder IDE 一起使用时遇到了同样的问题。

我尝试安装、卸载和安装以下版本但没有成功 pip 安装 shareplum pip 安装 lxml

我安装了 Python 3.9 和 Spyder IDE(我不知道,还安装了它自己的 Python 3.7 版本 - 截至 2021 年 5 月 13 日的 Spyder 版本).. [即使 Spyder IDE 设置为搜索所有python 包库存(例如 ../Python39/Lib/Site-Packages)用于包] Python 从其他路径提取包似乎存在 Spyder 问题。

解决方案,我已经卸载了所有 Python 和 Spyder IDE 安装。

然后我只安装了 Spyder IDE(它在它的路径中嵌套了一个 python 安装。然后我进入了路径“.../Spyder/Python”,在那里你可以找到所有熟悉的 Python.exe 和其他熟悉的 Python 文件。我必须使用这个 Python 安装来安装 Pip,然后我可以“pip install requirements.txt”——它安装 etree lxml 和其他好东西,比如 SharePlum 等。

这似乎奏效了!

祝你好运

答案 1 :(得分:-1)

如果你有美丽的汤,你为什么要使用lxml? (反之亦然) lxml库导入取决于python版本。请查看此网站:http://lxml.de/tutorial.html

还有一些提示使编程变得更容易:

  1. 尝试PIP。它使安装包更容易。只需键入&#34; pip install SomePackage&#34;它下载并安装包。

  2. 尝试使用比urllib更易读的请求。

  3. 尝试获取http://www.google.com会产生一些错误,因为谷歌并不希望你这样做。请尝试使用http://www.example.com