如何在网页中找到按钮的路径
How to find the path of a button in a web page
我正在抓取此页面:
并且需要按下按钮才能看到评论。
用chrome我得到这条路
//*[@id="myspanpos"]
但是当我尝试使用代金券时:
NEXT_BUTTON_XPATH = '//*[@id="myspanpos"]'
button = browser.find_element_by_xpath(NEXT_BUTTON_XPATH)
button.click()
得到:
Unable to locate element: {"method":"xpath","selector":"//button[text()=\"myspanpos\"]"}
我使用了 Selenium IDE,ID 为 id=customer-reviews
,CSS 路径为 css=#customer-reviews
,xpath 为 //a[contains(text(),'customer reviews')]
。我 运行 我的 Selenium IDE 脚本点击客户评论就可以了。
要打开 "Reviews" 下拉菜单 window,您需要单击锚标记元素 (<a>
),而不是 <span>
。所以使用
browser.find_element_by_id('close_open').click()
发现2个问题:
给定 xpath 包含 {"}。这不是有效的 xpath。您应该使用 //*[@id='myspanpos']
xpath。
“客户评论”按钮已被选中。所以如果你点击 link/button 它将重定向到同一页面。所以你需要在点击 link/button.
之后进行下一步
注意:尝试使用 wait/sleep 执行以获得更大的影响。示例
NEXT_BUTTON_XPATH = '//*[@id='myspanpos']'
button = browser.find_element_by_xpath(NEXT_BUTTON_XPATH)
button.click()
#Your wait or sleep statment
我正在抓取此页面:
并且需要按下按钮才能看到评论。
用chrome我得到这条路
//*[@id="myspanpos"]
但是当我尝试使用代金券时:
NEXT_BUTTON_XPATH = '//*[@id="myspanpos"]'
button = browser.find_element_by_xpath(NEXT_BUTTON_XPATH)
button.click()
得到:
Unable to locate element: {"method":"xpath","selector":"//button[text()=\"myspanpos\"]"}
我使用了 Selenium IDE,ID 为 id=customer-reviews
,CSS 路径为 css=#customer-reviews
,xpath 为 //a[contains(text(),'customer reviews')]
。我 运行 我的 Selenium IDE 脚本点击客户评论就可以了。
要打开 "Reviews" 下拉菜单 window,您需要单击锚标记元素 (<a>
),而不是 <span>
。所以使用
browser.find_element_by_id('close_open').click()
发现2个问题:
给定 xpath 包含 {"}。这不是有效的 xpath。您应该使用
//*[@id='myspanpos']
xpath。“客户评论”按钮已被选中。所以如果你点击 link/button 它将重定向到同一页面。所以你需要在点击 link/button.
之后进行下一步
注意:尝试使用 wait/sleep 执行以获得更大的影响。示例
NEXT_BUTTON_XPATH = '//*[@id='myspanpos']'
button = browser.find_element_by_xpath(NEXT_BUTTON_XPATH)
button.click()
#Your wait or sleep statment