为了账号安全,请及时绑定邮箱和手机立即绑定

Python Selenium:单击单选按钮

Python Selenium:单击单选按钮

人到中年有点甜 2022-04-23 21:39:23
我想知道如何使用 Python Selenium 单击此页面上的按钮。这是网页:https://hk.news.yahoo.com/poll/f83b2360-b41c-11e9-8d6b-b77be6568e98按钮的源代码是:<label class="option Cur(p) Ov(h) D(b) Pos(r) Bxsh($BorderLikeBoxShadow) Bdc($borderGray) Px(15px) Py(23px)" data-reactid="43"> <div class="Pos(r) D(tb)" data-reactid="44">  <div class="D(tbc) Ta(c) Va(m)" data-reactid="45"><input type="radio" value="o0" class="D(n) check" name="option" data-reactid="46"><img class="Trsdu(.3s) Op(0.7) Fil($opacityMsOld) Mend(15px) W(26px) H(26px)" src="https://s.yimg.com/ji/news/ybrain/unselect@1x.png" alt="" data-reactid="47"></div>  <div class="D(tbc) Va(m) Lh(1.5) C($c-fuji-grey-i) LineClamp(1) Fz(16px)" data-reactid="48">支持</div> </div></label>我尝试了如下脚本,但没有成功。import osimport globfrom selenium import webdriverfrom selenium.webdriver.support.wait import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as ECfrom selenium.common.exceptions import WebDriverExceptionoptions = webdriver.ChromeOptions()options.add_argument('window-size=1920x1080')link_url="https://hk.news.yahoo.com/poll/f83b2360-b41c-11e9-8d6b-b77be6568e98"driver = webdriver.Chrome('chromedriver', chrome_options=options)driver.get(link_url)driver.find_elements_by_xpath("//*[@type='radio']")[0].click()有什么建议么?谢谢!
查看完整描述

1 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

使用 WebdriverWait 和 javaScript Executor 使用下面的 xpath 单击元素。


element=WebDriverWait(driver,10).until(EC.presence_of_element_located((By.XPATH,"(//label[contains(@class,'option Cur(p) Ov(h) D(b) Pos(r)')]//div[contains(@class,'D(tbc) Va(m)')])[1]")))

driver.execute_script("arguments[0].click();",element)

或者


element=WebDriverWait(driver,10).until(EC.presence_of_element_located((By.XPATH,"(//label[contains(@class,'option Cur(p) Ov(h) D(b) Pos(r)')]//img)[1]")))

driver.execute_script("arguments[0].click();",element)

您需要导入以下内容。


from selenium.webdriver.common.by import By

from selenium.webdriver.support.ui import WebDriverWait

from selenium.webdriver.support import expected_conditions as EC


查看完整回答
反对 回复 2022-04-23
  • 1 回答
  • 0 关注
  • 147 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号