如何点击子菜单下的隐藏链接?

时间:2013-07-25 06:23:11

标签: python selenium html-lists

我未能在<ul>下获得隐藏链接。 driver.find_element_by_link_text('5641B07'),代码没问题,但如果我想查找其他链接,则无法获取它们,例如'5641CM6' 任何人都可以告诉我如何获取隐藏的链接点击?我怎样才能获得<ul>的所有链接?

enter image description here

<ul>结构类似于:

<ul>
  <li> <a> XXX</a> </li>
  <li> <a> YYY</a> </li>
  <li> 
    <a>Add software</a>
    <ul>
      <li> <a> A </a> </li>
      <li> <a> B </a> </li>
      <li> <a> C </a> </li>
      ...........
      <li> <a> Z </a> </li>
    </ul>
   </li>

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
driver=webdriver.Firefox()
driver.get("https://www-01.ibm.com/products/hardware/configurator/americas/bhui/launchNI.wss")
driver.find_element_by_id("modelnumber").send_keys('8038AC1')
driver.find_element_by_name("submit").click()
driver.find_element_by_id("continueTop").click()
el_addSoftware=driver.find_element_by_link_text('Add software')
builder=ActionChains(driver)
builder.move_to_element(el_addSoftware).perform()
driver.find_element_by_link_text('5641CM6').click()

1 个答案:

答案 0 :(得分:0)

这不是正常的下拉。

你可以使用这样的东西

WebUtilities.executeScript(driver, "$('.context_menu').show()");

将'。text_menu'替换为各自的css选择器

显示列表后单击所需选项。