Gfellha
Gfellha

Reputation: 109

Python How to Select a Radio button

I'm currently trying to select a radio button on the site linked in the code. I've tried finding it by the xpath, and by the ID, but both routes fail, giving me the 'Unable to locate element error'. So I was wondering if someone where could tell me what I'm doing wrong.

driver = webdriver.Chrome(executable_path="/Users/MrPete/Downloads/chromedriver_win32/chromedriver")
    driver.get('https://www.pals.pa.gov/#/page/search')
    radio = driver.find_element_by_id('optionsRadios1')
    radio.click()

This is the radio button I'm trying to click

enter image description here

Upvotes: 0

Views: 39

Answers (1)

KunduK
KunduK

Reputation: 33384

Induce WebDriverWait() and visibility_of_element_located() and following xpath.

Use Java scripts executor to click on the element.

code:

driver.get('https://www.pals.pa.gov/#/page/search')
radio=WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH,"//input[@id='optionsRadios1']/following::span[1]")))
driver.execute_script("arguments[0].click();", radio)

Import following libraries.

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

Browser snapshot.

enter image description here

Upvotes: 1

Related Questions