Python : no module named selenium

Posted on

Solving problem is about exposing yourself to as many situations as possible like Python : no module named selenium and practice these strategies over and over. With time, it becomes second nature and a natural way you approach any problems in general. Big or small, always start with a plan, use other strategies mentioned here till you are confident and ready to code the solution.
In this post, my aim is to share an overview the topic about Python : no module named selenium, which can be followed any time. Take easy to follow this discuss.

Python : no module named selenium

After searching the web for hours i didnt yet find an answer to my problem. I am using Python 3.6 and i cant import selenium. I always get the message “No module named ‘selenium”
I tried everything, i first downloaded selenium from this website .

Then I tried python -m pip install -U selenium and didnt work either. I tried some other things that people said but they didnt work either.
Im using windows 10.
Any help?

Asked By: Jordan


Answer #1:

As you mentioned you are using Python 3.6 following the steps :

  • Open Command Line Interface (CLI) and issue the command python to check if Python is properly installed :

    Python 3.6.1 (v3.6.1:69c0db5, Jan 16 2018, 17:54:52) [MSC v.1900 32 bit (Intel)]
     on win32
    Type "help", "copyright", "credits" or "license" for more information.
  • Ensure pip is working properly :

      pip <command> [options]
      install                     Install packages.
      download                    Download packages.
      uninstall                   Uninstall packages.
      freeze                      Output installed packages in requirements format.
      list                        List installed packages.
      show                        Show information about installed packages.
      check                       Verify installed packages have compatible dependencies.
      search                      Search PyPI for packages.
      wheel                       Build wheels from your requirements.
      hash                        Compute hashes of package archives.
      completion                  A helper command used for command completion.
      help                        Show help for commands.
    General Options:
      -h, --help                  Show help.
      --isolated                  Run pip in an isolated mode, ignoring environment variables and user configuration.
      -v, --verbose               Give more output. Option is additive, and can be used up to 3 times.
      -V, --version               Show version and exit.
      -q, --quiet                 Give less output. Option is additive, and can be used up to 3 times (corresponding to WARNING, ERROR, and CRITICAL logging levels).
      --log <path>                Path to a verbose appending log.
      --proxy <proxy>             Specify a proxy in the form [user:passwd@]proxy.server:port.
      --retries <retries>         Maximum number of retries each connection should attempt (default 5 times).
      --timeout <sec>             Set the socket timeout (default 15 seconds).
      --exists-action <action>    Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup, (a)bort.
      --trusted-host <hostname>   Mark this host as trusted, even though it does not have valid or any HTTPS.
      --cert <path>               Path to alternate CA bundle.
      --client-cert <path>        Path to SSL client certificate, a single file containing the private key and the certificate in PEM format.
      --cache-dir <dir>           Store the cache data in <dir>.
      --no-cache-dir              Disable the cache.
                                  Don't periodically check PyPI to determine
                                  whether a new version of pip is available for
                          download. Implied with --no-index.
  • Install latest selenium through pip :

    C:Usersusername>pip install -U selenium
    Collecting selenium
      Downloading selenium-3.8.1-py2.py3-none-any.whl (931kB)
        100% |¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦| 942kB 322kB/s
    Installing collected packages: selenium
    Successfully installed selenium-3.8.1
  • Confirm that Selenium is installed :

    C:Usersusername>pip freeze
  • Open an IDE (e.g Eclipse, PyCharm) and write a simple program as follows :

    from selenium import webdriver
    driver = webdriver.Firefox(executable_path="C:\path\to\geckodriver.exe")
  • Execute the program on which Firefox Quantum Browser will be initiated and the url will be accessed.

Python Download Location (Windows) :

Python (for Windows) can be download from the following location :
Answered By: DebanjanB

Answer #2:

I’m on VS Code in Windows 10, and here’s how I solved it.

You need to pay attention to where the Python is located (in my case),

1) C:Users_Me_AppDataLocalProgramsPythonPython38

and where the Python looks for libraries/packages, including the ones installed using pip (again, in my case),

2) C:Users_Me_AppDataRoamingPythonPython38

I don’t know why these two locations are different (gotta fix it at some point). It seemed that Python was running from the first location, but it was looking for libraries in the second!:/

Anyway, since I have limited experience in Python , I just copied the Libsite-packages from the first location (including selenium folders) to site-packages in second one in hopes of solving the issue, which worked out for me!

How to check for there locations

1) Open Python CLI, typed the following command:

which python

2) Open Python CLI, typed the following commands (From this answer):

>>> import site
>>> site.USER_SITE


Since this seems a temporary solution, I uninstalled Python and reinstalled it again in a proper directory (other than the default install directory), and now which python and which pip point to the same folder! Problem solved!

Answered By: khalifmahdi
The answers/resolutions are collected from stackoverflow, are licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0 .

Leave a Reply

Your email address will not be published.