PKG-INFO 7.52 KB
Newer Older
1
Metadata-Version: 1.1
2
Name: selenium
3
Version: 4.0.0a1
4
Summary: Python bindings for Selenium
5
Home-page: https://github.com/SeleniumHQ/selenium/
6 7
Author: UNKNOWN
Author-email: UNKNOWN
8
License: Apache 2.0
9 10 11 12
Description: ======================
        Selenium Client Driver
        ======================
        
13 14
        Introduction
        ============
15
        
16 17
        Python language bindings for Selenium WebDriver.
        
18
        The `selenium` package is used to automate web browser interaction from Python.
19
        
20 21 22 23 24 25 26
        +-----------+--------------------------------------------------------------------------------------+
        | **Home**: | http://www.seleniumhq.org                                                            |
        +-----------+--------------------------------------------------------------------------------------+
        | **Docs**: | `selenium package API <https://seleniumhq.github.io/selenium/docs/api/py/api.html>`_ |
        +-----------+--------------------------------------------------------------------------------------+
        | **Dev**:  | https://github.com/SeleniumHQ/Selenium                                               |
        +-----------+--------------------------------------------------------------------------------------+
27
        | **PyPI**: | https://pypi.org/project/selenium/                                                   |
28 29 30
        +-----------+--------------------------------------------------------------------------------------+
        | **IRC**:  | **#selenium** channel on freenode                                                    |
        +-----------+--------------------------------------------------------------------------------------+
31
        
32
        Several browsers/drivers are supported (Firefox, Chrome, Internet Explorer), as well as the Remote protocol.
33
        
34 35
        Supported Python Versions
        =========================
36
        
37
        * Python 2.7, 3.4+
38 39 40 41
        
        Installing
        ==========
        
42
        If you have `pip <https://pip.pypa.io/>`_ on your system, you can simply install or upgrade the Python bindings::
43
        
44
            pip install -U selenium
45
        
46
        Alternately, you can download the source distribution from `PyPI <https://pypi.org/project/selenium/#files>`_ (e.g. selenium-4.0.0a1.tar.gz), unarchive it, and run::
47 48 49
        
            python setup.py install
        
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
        Note: You may want to consider using `virtualenv <http://www.virtualenv.org/>`_ to create isolated Python environments.
        
        Drivers
        =======
        
        Selenium requires a driver to interface with the chosen browser. Firefox,
        for example, requires `geckodriver <https://github.com/mozilla/geckodriver/releases>`_, which needs to be installed before the below examples can be run. Make sure it's in your `PATH`, e. g., place it in `/usr/bin` or `/usr/local/bin`.
        
        Failure to observe this step will give you an error `selenium.common.exceptions.WebDriverException: Message: 'geckodriver' executable needs to be in PATH.`
        
        Other supported browsers will have their own drivers available. Links to some of the more popular browser drivers follow.
        
        +--------------+-----------------------------------------------------------------------+
        | **Chrome**:  | https://sites.google.com/a/chromium.org/chromedriver/downloads        |
        +--------------+-----------------------------------------------------------------------+
        | **Edge**:    | https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/ |
        +--------------+-----------------------------------------------------------------------+
        | **Firefox**: | https://github.com/mozilla/geckodriver/releases                       |
        +--------------+-----------------------------------------------------------------------+
        | **Safari**:  | https://webkit.org/blog/6900/webdriver-support-in-safari-10/          |
        +--------------+-----------------------------------------------------------------------+
71 72 73 74 75 76
        
        Example 0:
        ==========
        
        * open a new Firefox browser
        * load the page at the given URL
77
        
78
        .. code-block:: python
79
        
80 81 82 83 84 85 86 87 88 89 90 91
            from selenium import webdriver
        
            browser = webdriver.Firefox()
            browser.get('http://seleniumhq.org/')
        
        Example 1:
        ==========
        
        * open a new Firefox browser
        * load the Yahoo homepage
        * search for "seleniumhq"
        * close the browser
92
        
93
        .. code-block:: python
94
        
95
            from selenium import webdriver
96 97
            from selenium.webdriver.common.keys import Keys
        
98 99 100 101 102 103 104 105 106 107 108 109 110
            browser = webdriver.Firefox()
        
            browser.get('http://www.yahoo.com')
            assert 'Yahoo' in browser.title
        
            elem = browser.find_element_by_name('p')  # Find the search box
            elem.send_keys('seleniumhq' + Keys.RETURN)
        
            browser.quit()
        
        Example 2:
        ==========
        
111
        Selenium WebDriver is often used as a basis for testing web applications.  Here is a simple example using Python's standard `unittest <http://docs.python.org/3/library/unittest.html>`_ library:
112
        
113
        .. code-block:: python
114 115
        
            import unittest
116
            from selenium import webdriver
117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137
        
            class GoogleTestCase(unittest.TestCase):
        
                def setUp(self):
                    self.browser = webdriver.Firefox()
                    self.addCleanup(self.browser.quit)
        
                def testPageTitle(self):
                    self.browser.get('http://www.google.com')
                    self.assertIn('Google', self.browser.title)
        
            if __name__ == '__main__':
                unittest.main(verbosity=2)
        
        Selenium Server (optional)
        ==========================
        
        For normal WebDriver scripts (non-Remote), the Java server is not needed.
        
        However, to use Selenium Webdriver Remote or the legacy Selenium API (Selenium-RC), you need to also run the Selenium server.  The server requires a Java Runtime Environment (JRE).
        
138
        Download the server separately, from: http://selenium-release.storage.googleapis.com/4.0/selenium-server-standalone-4.0.0.jar
139 140
        
        Run the server from the command line::
141
        
142
            java -jar selenium-server-standalone-3.141.0.jar
143
        
144
        Then run your Python client scripts.
145 146 147 148
        
        Use The Source Luke!
        ====================
        
149 150 151 152 153
        View source code online:
        
        +-----------+-------------------------------------------------------+
        | official: | https://github.com/SeleniumHQ/selenium/tree/master/py |
        +-----------+-------------------------------------------------------+
154 155 156 157 158 159 160 161 162 163 164
        
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: POSIX
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Topic :: Software Development :: Testing
Classifier: Topic :: Software Development :: Libraries
Classifier: Programming Language :: Python
165
Classifier: Programming Language :: Python :: 2.7
166
Classifier: Programming Language :: Python :: 3.4
167 168
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6