首页 > 解决方案 > 如何定位这个特定元素?

问题描述

所以我在一些自动化工作中使用了 selenium ide,并且玩得很开心。但是最近,当我在https://pay.google.com/gp/w/home/paymentmethods并尝试单击显示“添加付款方式”的按钮时,selenium 根本找不到它。

我尝试过的事情:

CSS.finder:

css=.b3id-payment-method-add-instrument-link span

Xpath:idRelative

xpath=//body[@id='iframeBody']/div[3]/div[2]/div/div[4]/a/div/div/span

Xpath:位置

xpath=//div[4]/a/div/div/span

xpath:innerText

xpath=//span[contains(.,'Add payment method')]

即使我记录点击次数,selenium ide 也会记录类似

select frame index=0
click css=.b3id-payment-method-add-instrument-link span

这也不起作用

我应该怎么做才能找到这个特定的按钮?

标签: seleniumxpathselenium-chromedriverelementselenium-ide

解决方案


<iframe frameborder="0" src="about:blank" id="mainWidget_:0Iframe" name="mainWidget_:0Iframe" style="border: 0px; vertical-align: initial; display: block; width: 100%; min-height: calc((100vh - 69px) - 113px); position: static; top: auto; visibility: visible; z-index: auto; background-color: inherit; height: 510px; left: auto; opacity: 1; transition: all 0s ease 0s;" title=""></iframe>

您的元素在 iframe 切换到它。

<div class="b3id-info-message-html b3-info-message-html" data-was-visible="true"><span data-was-visible="true">Add payment method</span></div>

一个简单的 CSS 选择器将是

.b3id-info-message-html.b3-info-message-html

推荐阅读