gpt4 book ai didi

python - 当所有输入的功能相同时如何获得按钮的唯一 XPATH

转载 作者:行者123 更新时间:2023-11-30 22:04:14 24 4
gpt4 key购买 nike

我正在尝试使用 python 中的 selenium Web 驱动程序提取 NBA 球员统计数据,这是我的尝试:

from selenium import webdriver
from selenium.webdriver.support.ui import Select


browser = webdriver.Chrome()

browser.get('https://www.basketball-reference.com')

xp_1 = "//select[@id='selector_0' and @name='team_val']"
team = Select(browser.find_element_by_xpath(xp_1))
team.select_by_visible_text('Golden State Warriors')

xp_2 = "//select[@id='selector_0' and @name='1']"
player = Select(browser.find_element_by_xpath(xp_2))
player.select_by_visible_text('Jordan Bell')

我遇到的问题是此页面中有 4 个“Go”按钮,并且都具有相同的输入功能。换句话说,以下 xpath 返回 4 个按钮:

//input[@type='submit'and @name="go_button" and @id="go_button" and @value="Go!"]

我尝试添加祖先失败,如下所示,但它不返回 xpath:

//input[@type='submit' and @name="go_button" and @id="go_button" and @value="Go!"]/ancestor::/form[@id='player_roster']

我很欣赏任何见解!

最佳答案

尝试下面的 XPAth 选择所需的“Go”按钮:

"//input[@value='Go!' and ancestor::form[@id='player_roster']]"

"//form[@id='player_roster']//input[@value='Go!']"

请注意,您不应在 XPath 表达式中混合使用单引号和双引号,并且 ancestor 轴的正确用法是

//descendant_node/ancestor::ancestor_node

关于python - 当所有输入的功能相同时如何获得按钮的唯一 XPATH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53365150/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com