Пакет не работает, если запустить из cmd или из файла .py .... PYTHON - PullRequest
0 голосов
/ 07 декабря 2018

Я заметил проблему с python (windows).Если я создаю программу (даже простую) и импортирую пакет, он работает, если я запускаю его из оболочки python, но если я запускаю его из файла .py или с cmd (C:\Python34\program.py), это не так.

Уточните:

Программа 1

from selenium import webdriver
print("have a good day")

Программа 2

import pyautogui
print("be happy")
pyautogui.moveT(300,300)

ОшибкаПрограмма 1

Traceback (most recent calls)
 File"C:\Python34\program.py" line 1, in <module>
  from selenium import webdriver
ModuleNotFoundError: No module named 'selenium'

Ошибка Программа 2

Traceback (most recent calls)
 File"C:\Python34\program.py" line 1, in <module>
  import pyautogui
ModuleNotFoundError: No module named 'pyautogui'

Поэтому я не понимаю, почему он не находит / не распознает модуль, если яне запускается из оболочки.

1 Ответ

0 голосов
/ 07 декабря 2018

ModuleNotFoundError утверждает, что модуль 'selenium' и 'pyautogui' недоступен для интерпретатора python (тот, который вы вызывали для выполнения вашего скрипта).Поскольку вы пытались выполнить один и тот же код из интерпретатора оболочки, проблема может быть связана с несколькими установками python в вашей системе Windows.

Если в вашей системе установлено несколько версий python, то возникает существует вероятность того, что пакеты, которые вы пытались установить с помощью команды pip, в конечном итоге не будут находиться внутри версии Python , которую вы ожидали увидеть.

Прежде чем что-либо делать, проверьте, на какую версию Python ссылается утилита pip:

$ pip --version pip <ver> from path/to/pip (python <version>)

Если версия Python в конце вышеприведенного результата равна 2.x, тогда это означает, что пакет selenium, который вы пытались установить с помощью pip install selenium, оказался в среде Python 2.

Однако, когда вы пытаетесь выполнить скрипт Python, вызывается интерпретатор 3.x.В этом случае модуль будет недоступен.Вот что вы можете сделать:

Установить пакет с помощью команды pip3:

pip3 install selenium

Это установит selenium или любой другой пакет, только внутри установки Python 3.Теперь вы сможете выполнить скрипт без ошибок.То же самое касается pyautogui .

Также обратите внимание, что под Microsoft Windows, команда python обычно вызывает интерпретатор оболочки Python 2 .В этом случае вы легко могли запустить свой код (для которого требовался селен) без каких-либо ошибок.В Windows есть еще одна утилита под названием py.Вы можете узнать больше об этом здесь

РЕДАКТИРОВАТЬ: селен не является предустановленным пакетом

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