Python Selenium,有没有办法点击单选按钮?我的代码在网站上不起作用

Posted

技术标签:

【中文标题】Python Selenium,有没有办法点击单选按钮?我的代码在网站上不起作用【英文标题】:Python Selenium, is there a way to click a radio button? My code doesn't work on the site 【发布时间】:2021-10-16 08:23:24 【问题描述】:
driver.get('https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=1&ie=utf8&query=%ED%99%98%EC%9C%A8')
driver.find_element_by_xpath('//*[@id="_cs_foreigninfo"]/div/div[2]/div/div[1]/div[1]/div[2]/div[1]/div/div/ul/li[2]/div/a/span').click()

【问题讨论】:

【参考方案1】:

你可以试试下面的 xpath :

//div[@class='radio_check _radioBtn ']//a

代码 1:

driver.find_element_by_xpath("//div[@class='radio_check _radioBtn ']//a").click()

代码 2:

WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//div[@class='radio_check _radioBtn ']//a"))).click()

进口:

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

【讨论】:

非常感谢您的回复,但此来源不可点击。 driver.find_element_by_xpath("//div[@class='radio_check _radioBtn ']//a").click() 异常是什么? 不知道什么意思。这是完整的代码: from selenium import webdriver import time driver = webdriver.Chrome('E:/CODE/chromedriver.exe') driver.get('search.naver.com/...) driver.find_element_by_xpath("//div[ @class='radio_check _radioBtn ']//a").click() time.sleep(5) driver.close()【参考方案2】:

试试下面的代码。

driver.get("https://search.naver.com/search.naver?where=nexearch&sm=top_hty&fbm=1&ie=utf8&query=%ED%99%98%EC%9C%A8")
buttons = driver.find_elements_by_class_name("ico_radio")
for i in range(len(buttons)):
    buttons[i].click()
    time.sleep(2)

【讨论】:

非常感谢,您的代码运行良好。我会经常来学习技能。 ^^

以上是关于Python Selenium,有没有办法点击单选按钮?我的代码在网站上不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Selenium4+Python3系列 - Cookie截图单选框及复选框处理富文本框日历控件操作

无法单击跨度 Selenium Python 内的单选按钮

Selenium2+python自动化19-单选框和复选框

Selenium2+python自动化19-单选框和复选框

Selenium2+python自动化19-单选框和复选框(radioboxcheckbox)

selenium3+python自动化10-基本操作2(单选框复选框table定位)