Python selenium 'list' object has no attribute 'text' error

selenium python install
python selenium chrome
selenium python framework
python selenium send keys
selenium-python github
python selenium api
selenium with python - basic to expert
python selenium assert

I'm trying to copy text from comment on a website<span class="auto-link">yes</span> and my python code is

element=browser.find_elements_by_xpath('//span[@class="auto-link"][1]')
print(element.text)

but I keep on getting the 'list' object has no attribute 'text' error, I don't know what I'm doing wrong.

I'm using selenium in python. Try this code I hope this will work for you.

    element=browser.find_elements_by_xpath('//span[@class="auto-link"][1]')

    for value in element:
        print(value.text)

Selenium with Python, from selenium import webdriver from selenium.webdriver.common.keys import Keys driver = webdriver.Firefox() driver.get("http://www.python.org") assert  8.2. Does Selenium 2 support XPath 2.0 ? 8.3. How to scroll down to the bottom of a page ? 8.4. How to auto save files using custom Firefox profile ? 8.5. How to upload files into file inputs ? 8.6. How to use firebug with Firefox ? 8.7. How to take screenshot of the current window ?

I've never used Selenium, but based on the error and your response, the answer is pretty clear.

When you search for a class, there may be multiple matching elements, so it returns a list of all found matches. Even if you only have a single element with that class, it will still return a list for consistency.

Just grab the first element from the found elements:

elements = browser.find_elements_by_xpath('//span[@class="auto-link"][1]')
# ^ Renamed to reflect type better

print(elements[0].text)
#              ^ Grab the first element

2. Getting Started, Introduction. Python language bindings for Selenium WebDriver. The selenium package is used to automate web browser interaction from Python. Selenium - Web Automation with Python. Selenium is a web automation framework. It starts a web browser and any task that can be done typically on the web, Selenium+Python can do for you. Related course. Browser Automation with Python Selenium.

This will work when you are looking for more than one element and takes the first element that matches the xpath:

element=browser.find_elements_by_xpath('//span[@class="auto-link"][1]').getAttribute("innerHTML")
print(element)

This is when you are looking only for one:

element=browser.find_element_by_xpath('//span[@class="auto-link"]').getAttribute("innerHTML")
print(element)

The output:

>>>yes

selenium · PyPI, Selenium supports Python and thus can be utilized with Selenium for testing. Python is easy compared to other programming languages,  Summary: Selenium is an open-source web-based automation tool. Python language is used with Selenium for testing. It has far less verbose and easy to use than any other programming The Python APIs empower you to connect with the browser through Selenium Selenium can send the standard Python

First Write the xpath of span in which you are currently working and then add the index number in the last of xpath but within it like given below.

from selenium import webdriver`
driver = webdriver.Firefox()
driver.get("http://www.example.org")
element=browser.find_elements_by_xpath('//span[@class="auto-link"[1]').click()
print(element)

[1] is the index number of my value which i want to access.

Selenium Webdriver using Python: Tutorial with Example, Setup. Your first step, before writing a single line of Python, is to install a Selenium supported WebDriver for your favorite web browser. In what follows  Selenium is a library that comes in various programming languages and here we will be using the python bindings for Selenium. Since selenium is a library/module that goes on python runtime, we will install it through pip (pip is probably the most popular way to install libraries in python).

Modern Web Automation With Python and Selenium – Real Python, Learn to use Selenium Python to run web automation tests with ease in this step-​by-step tutorial. A detailed guide for beginners to run first test  Selenium refers to a number of different open-source projects used for browser automation. It supports bindings for all major programming languages, including our favorite language: Python. The Selenium API uses the WebDriver protocol to control a web browser, like Chrome, Firefox or Safari. The browser can run either localy or remotely.

Selenium with Python : Getting Started with Automation, Selenium with Python Tutorial with What is Selenium, What is Python, Selenium with Python, Download and Installation, Configure PyDev in Eclipse, PyCharm  Selenium Python is one of the great tools for testing automation. These days most of the web apps are using AJAX techniques. When a page is loaded by the browser, the elements within that page may load at different time intervals.

Selenium WebDriver with Python Tutorial, Selenium WebDriver is one of the most popular tools for Web UI Automation. And no better than Python can complement it to automate a broad range of web  Python bindings for Selenium You can download selenium bindings using pip. Latest versions of Python already comes with pip module in the standard library. Open command prompt and install selenium by typing "pip install selenium" and press enter.

Comments
  • yes it works! thanks so much for the help!
  • Possible duplicate of AttributeError: 'list' object has no attribute 'click' - Selenium Webdriver
  • Possible duplicate of 'list' object has no attribute 'get_attribute' while iterating through WebElements