ModuleNotFoundError: нет модуля с именем «win10toast»;bs4.FeatureNotFound: Не удалось найти конструктор дерева с запрошенными функциями: lxml - PullRequest
1 голос
/ 07 октября 2019

Я уже установил их оба с помощью команды pip, и она показывает, что она установлена ​​и еще не работает. Я также обновил версию pip, но он показывает команду для обновления pip.

    C:\Users\DELL>pip install win10toast
    Requirement already satisfied: win10toast in c:\users\dell\appdata\local\programs\python\python37\lib\site-packages (0.9)
    Requirement already satisfied: setuptools in c:\users\dell\appdata\local\programs\python\python37\lib\site-packages (from win10toast) (40.8.0)
    Requirement already satisfied: pypiwin32 in c:\users\dell\appdata\local\programs\python\python37\lib\site-packages (from win10toast) (223)
    Requirement already satisfied: pywin32>=223 in c:\users\dell\appdata\local\programs\python\python37\lib\site-packages (from pypiwin32->win10toast) (225)
    You are using pip version 19.0.3, however version 19.2.3 is available.
    You should consider upgrading via the 'python -m pip install --upgrade pip' command.

    C:\Users\DELL>cd C:\Users\DELL\desktop

    C:\Users\DELL\Desktop>python test.py
    Traceback (most recent call last):
      File "test.py", line 3, in <module>
        from win10toast import ToastNotifier
    ModuleNotFoundError: No module named 'win10toast'
C:\Users\DELL\Desktop>pip install lxml
Requirement already satisfied: lxml in c:\users\dell\appdata\local\programs\python\python37\lib\site-packages (4.4.1)
You are using pip version 19.0.3, however version 19.2.3 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

C:\Users\DELL\Desktop>pip3 install lxml
Requirement already satisfied: lxml in c:\users\dell\appdata\local\programs\python\python37\lib\site-packages (4.4.1)
You are using pip version 19.0.3, however version 19.2.3 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

C:\Users\DELL\Desktop>python test.py
Traceback (most recent call last):
  File "test.py", line 4, in <module>
    soup = BeautifulSoup(source,'lxml')
  File "C:\Users\DELL\AppData\Local\Programs\Python\Python37-32\lib\site-packages\bs4\__init__.py", line 196, in __init__
    % ",".join(features))
bs4.FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?

1 Ответ

0 голосов
/ 16 октября 2019

Давайте разберем, что происходит:

  1. Ваша команда pip install lxml привела к уже удовлетворенной ошибке в папке "...python\python37\lib\site-packages..."
  2. pip3 install lxml привела к уже удовлетвореннойошибка в папке "...python\python37\lib\site-packages..."

Так что и ваши pip, и pip3 указывали на дистрибутив python, установленный в "...python\python37, но когда вы выполняете свой скрипт, bs4импортируется из "...Python\Python37-32\lib\site-packages..." (обратите внимание, что Python37-32 отличается от путей, на которые указывает pip). Это заставляет меня поверить, что у вас как-то есть две разные установки python рядом и что pip и python указывают на разные установки, что создает беспорядок.

В комментариях вы говорите, что выустановили anaconda, который сейчас является третьим python дистрибутивом. Чтобы разобраться в этом, я бы порекомендовал

  1. Удалите установки python, которые у вас были до этого, после этого убедитесь, что оба "...Python\Python37-32\lib\site-packages..." и "...python\python37\lib\site-packages..." исчезли / опустели
  2. Убедитесь, что все команды, такие как python pip, теперь все указывают на вашу anaconda установку
  3. Создайте и активируйте виртуальную среду для вашего проекта (при желании)
  4. Установите bs4: conda install -c anaconda beautifulsoup4 и win10toast: pip install win10toast

Теперь все операции импорта должны работать нормально

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...