[问题] Selenium 用 Select 选出下拉选单

楼主: yshihyu (yshihyu)   2018-04-23 13:37:07
https://imgur.com/a/ALoXGnR // 像是这样下拉选单
下面程式码我想选择第7个频道
select = Select(driver.find_element_by_name("channel_24"))
select.select_by_visible_text("7")
for op in select.options:
print(op.text)
我程式码印出来的下单选单都是空的~
错误:
selenium.common.exceptions.ElementNotVisibleException: Message: element not
visible: Element is not currently visible and may not be manipulated
下面网址是我要用Select 读取的 html 跟 下面是完整的错误讯息
https://gist.github.com/shihyu/d41512962cb35dea2dd8c369bdb0154b
因为我试过很多方式都无法选择要的字段
谢谢
作者: victor0929 (RioneeYu)   2018-04-24 17:59:00
用xpath?
作者: s860134 (s860134)   2018-04-24 23:26:00
这个是某家 router 的控制接口吧?其实你可以直接用 execute_script 直接对那个字段操作...
作者: rexyeah (ccccccc)   2018-04-25 14:51:00
试试select_by_value() 而且你的select display:none ?
作者: asglay (收收收尾)   2018-04-25 22:59:00
先用requests读出来, 再用beautifulsoup parsing出来
楼主: yshihyu (yshihyu)   2018-04-25 23:36:00
select_by_value 试过不行 ... select display直接是none找到原因了~要先用 execute_script把 display:设成block在用select 就可以~感谢

Links booklink

Contact Us: admin [ a t ] ucptt.com