Python 3-使用pip安装Lxml后(非root用户)获取“没有名为“ lxml”的模块”

时间:2019-05-16 17:43:33

标签: python installation lxml

我只想说,我已经在Pip is already installed: but I am getting no module named lxml看到了这个问题,并且看到了一个关于以非root用户身份安装它的答案,这就是我所做的,但这并没有帮助我。

我刚刚安装了lxml,这是我的安装方式:

[ec2-user@ip-xxx-xx-xx-xxx newslookup]$ pip install --user lxml
Collecting lxml
  Using cached https://files.pythonhosted.org/packages/89/51/a8a6cdb8a084d32dbc9bda94623dc35310ae2002be57de8702a1703c0026/lxml-4.3.3-cp27-cp27mu-manylinux1_x86_64.whl
Installing collected packages: lxml
Successfully installed lxml-4.3.3

因此安装过程一切顺利。

这是python脚本:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

from lxml import html
import requests
from time import sleep
import json
import argparse
from random import randint

这是我运行脚本时的输出:

[ec2-user@ip-xxx-xx-xx-xxx newslookup]$ python3 nasdaq_scrape_sec.py aapl
Traceback (most recent call last):
  File "nasdaq_scrape_sec.py", line 4, in <module>
    from lxml import html
ModuleNotFoundError: No module named 'lxml'

此外,我找不到为此安装的轮子。

3 个答案:

答案 0 :(得分:1)

尝试升级。 pip install --upgrade lxml

答案 1 :(得分:0)

您使用的是什么版本的python, 您正在使用python2.7安装如何pip 否则,python3您应该使用pip3

答案 2 :(得分:0)

在Windows中,这是由于我安装了多个python.exe实例而发生的。程序包已安装在一个实例上,但运行脚本使用了另一个。因此,您想运行安装了pip的特定python.exe实例。您可以通过尝试两次安装相同的软件包来找出安装位置。第二次给您这样的消息:

  

已满足要求:c:\ users \ blahuser \ appdata \ local \ programs \ python \ python36-32 \ lib \ site-packages(4.3.4)中的lxml

查看此相关文章以了解更多信息: ModuleNotFoundError: No module named 'requests' after pip install

您应该能够成功使用以下命令行运行

  

c:\ Users \ blahuser \ AppData \ Local \ Programs \ Python \ Python36-32 \ python.exe c:\ test \ scripts \ blah.py

我想您也可以修复环境变量以触发正确的python.exe开头,问题也将消失,甚至强制在默认的python实例上安装pip(请参见上面的链接)