python - ImportError:找不到lxml,请安装它
问题描述
我正在使用 udemy 上的 jupyter 笔记本,这个主题是关于熊猫的,关于我收到此错误消息的问题之一:
ImportError Traceback (most recent call last)
<ipython-input-6-dc8b64eb545d> in <module>()
----> 1 df = pd.read_html('http://www.fdic.gov/bank/individual/failed/banklist.html')
c:\users\phillip.desktop-did4ci8\appdata\local\programs\python\python37-32\lib\site-packages\pandas\io\html.py in read_html(io, match, flavor, header, index_col, skiprows, attrs, parse_dates, tupleize_cols, thousands, encoding, decimal, converters, na_values, keep_default_na, displayed_only)
985 decimal=decimal, converters=converters, na_values=na_values,
986 keep_default_na=keep_default_na,
--> 987 displayed_only=displayed_only)
c:\users\phillip.desktop-did4ci8\appdata\local\programs\python\python37-32\lib\site-packages\pandas\io\html.py in _parse(flavor, io, match, attrs, encoding, displayed_only, **kwargs)
791 retained = None
792 for flav in flavor:
--> 793 parser = _parser_dispatch(flav)
794 p = parser(io, compiled_match, attrs, encoding, displayed_only)
795
c:\users\phillip.desktop-did4ci8\appdata\local\programs\python\python37-32\lib\site-packages\pandas\io\html.py in _parser_dispatch(flavor)
749 else:
750 if not _HAS_LXML:
--> 751 raise ImportError("lxml not found, please install it")
752 return _valid_parsers[flavor]
753
ImportError: lxml not found, please install it
(我使用的是python 3.7,我已经下载了anaconda)
然后我尝试使用以下命令在命令提示符下安装 lxml:
pip3 install lxml
但是我收到此错误消息:
Command "c:\users\phillip.desktop-did4ci8\appdata\local\programs\python\python37-32\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\PHILLI~1.DES\\AppData\\Local\\Temp\\pip-install-i762jowc\\lxml\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\PHILLI~1.DES\AppData\Local\Temp\pip-record-z7kvhhca\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\PHILLI~1.DES\AppData\Local\Temp\pip-install-i762jowc\lxml\
我不确定如何解决这个问题。
解决方案
从那里打开 Anaconda Navigator 单击 Environments 选择您当前正在处理的一个并从那里安装包。原因是你的 jupyter notebook 没有使用你默认的 python 安装。并且仅pip3
在终端中使用命令而不切换到正确的环境将不起作用。另外,我在从 Anaconda 终端安装时遇到了一些问题。
编辑
从 navigator 安装还将安装所有需要的依赖项,包括 C 库。这确实是在 jupyter/Anaconda 项目中管理包的最简单方法。
编辑2
从您的评论中,我感觉您的 jupyter notebook 使用了不同的 python 环境。Anaconda 附带 python 3.6 而不是 3.7。加上错误中的路径:
Command "c:\users\phillip.desktop-did4ci8\appdata\local\programs\python\python37-32\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\PHILLI~1.DES\\AppData\\Local\\Temp\\pip-install-i762jowc\\lxml\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\PHILLI~1.DES\AppData\Local\Temp\pip-record-z7kvhhca\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users\PHILLI~1.DES\AppData\Local\Temp\pip-install-i762jowc\lxml\
建议与 Anaconda 基地(根)不同的环境。尝试从导航器中使用 jupyter,这将确保您使用正确的环境
推荐阅读
- kotlin - 如何避免在 kotlin 频道生产者中使用 sendBlocking?
- java - 为什么 java Class是通用的,但 Field 不是?
- list - Flutter,如何从 Firestore 获取相应索引项的图像 URL 并显示在列表视图中
- python - 如何知道您在 3.8 中构建的所有脚本是否适用于 3.4 python
- python-3.x - 用于烧瓶应用程序的 digitalocean ubuntu 16.0 中的 Letsencrypt ssl 安装问题
- java - 如何在java中退出scanner.hasNextLine()循环
- asp.net - 当在 web config 和 page 指令中设置维护scrollpositiononpostback 时,在 ASP.NET 中保持 .aspx 页面的滚动位置
- python - 无法连接到 cosmos db 模拟器 Mongo API 3.6
- exception - JMockit,如何模拟返回异常的方法,而不是抛出异常
- php - php中有没有类似进程函数的东西?