如何使用selenium、python列出网站中所有可点击的链接



我是硒的新手。我想导航到www.cisco.com,并在类似的列表中按名称列出所有可点击的按钮(如果可能的话,还包括相应的xpath(

["登录"、"产品和服务"、"解决方案"等]

我可以使用chrome浏览器exe导航到网站,如下所示:

from selenium import webdriver
from selenium.webdriver.common.by import By
chromedriver_location = "C:\Path\To\chromedriver"
driver = webdriver.Chrome(chromedriver_location)
driver.get('https://cisco.com/')
first_popup_close='//*[@id="onetrust-close-btn-container"]/button'
supposedly_front_page='//*[@id="wcq"]'
#Close the pop-up
driver.find_element("xpath", first_popup_close).click()
#If I am not wrong in selecting the XPATH..
ids = driver.find_elements(By.XPATH, supposedly_front_page)
for i in ids:
#print i.tag_name
print(i.get_attribute("name"))    # Does not work as expected

我甚至尝试使用find_element(By.LINK_TEXT, "Log in")find_element(By.PARTIAL_LINK_TEXT, "Log")等,只是为了找到"登录"按钮(以防我的首页XPATH可能错误(,但它不会返回输出(空列表(
问题是-硒文档对此有模糊的信息,或者可能是我找不到所需的信息。旧的帖子基本上不起作用,因为很多函数现在已经被弃用了。

如果你想从这个页面获得登录按钮,请执行:

loginbtn = driver.find_element_by_xpath("//button[@id='fwt-profile-button']")

或者,如果你想获得所有按钮,你可以通过以下操作来识别它们:

btns = driver.find_elements_by_xpath("//button")

相关内容

  • 没有找到相关文章

最新更新