在Python3中使用Selenium选择一个单选按钮 image here。以下是我用来选择单选按钮但不起作用的代码。
emailElem = browser.find_element_by_class_name('SSR_DUMMY_RECV1$sels$0')
emailElem.click()
答案 0 :(得分:2)
emailElem = browser.find_element_by_id('SSR_DUMMY_RECV1$sels$0')
emailElem = browser.find_element_by_name('SSR_DUMMY_RECV1$sels$0')
答案 1 :(得分:0)
再加上alecxe的答案。
您需要确保其id
和name
是唯一的。
如果它们不是唯一的,您可以向find by
方法添加更多属性,例如
emailElem = browser.find_element_by_css_selector("input[id='SSR_DUMMY_RECV1$sels$0'][class=''PSRADIOBUTTON][type='radio']")
您使用的属性越多,您找到唯一元素的可能性就越大。
答案 2 :(得分:0)
根据对原始问题的评论,您声称自己收到了此错误:
Traceback (most recent call last):
File "./fsu.py", line 20, in <module>
emailElem.click()
AttributeError: 'list' object has no attribute 'click'
听起来您正在调用其中一个get_elements_*
函数而不是get_element_*
(请注意复数elements
)。
错误消息中包含大量信息,需要从字面上理解。您的错误消息告诉您列表没有单击方法,这是真的。在行间读取意味着您调用.click()
的对象是一个列表,即使您认为它是一个元素。