Python元素NotVisible异常

Python元素NotVisible异常,python,selenium,Python,Selenium,我在Selenium中得到了一个反直觉的元素NotVisible异常。我试图排除这是我的方法还是网站的问题 为了解释,我想点击一个按钮“问题”。在此之前,我必须在两个标签中选择一个:“信用卡”、“交易限额”。所以我使用的代码如下: browser.find_element_by_xpath("//*[contains(text(), 'Credit card')]").click(); browser.find_element_by_xpath("//*[contains(text(), 'Is

我在Selenium中得到了一个反直觉的元素NotVisible异常。我试图排除这是我的方法还是网站的问题

为了解释,我想点击一个按钮“问题”。在此之前,我必须在两个标签中选择一个:“信用卡”、“交易限额”。所以我使用的代码如下:

browser.find_element_by_xpath("//*[contains(text(), 'Credit card')]").click();
browser.find_element_by_xpath("//*[contains(text(), 'Issue')]").click();
这段代码运行良好。但是,当我更改为:

  browser.find_element_by_xpath("//*[contains(text(), 'Transaction Limit')]").click();
  browser.find_element_by_xpath("//*[contains(text(), 'Issue')]").click();
如果尝试单击“问题”按钮,则会引发ElementNotVisible异常。我尝试了多种方法,例如指定完整的XPath。但如果我先点击交易限额,我似乎无法点击发行按钮。其他人有什么办法可以解决这个问题吗


谢谢

您可以尝试以下代码:

transaction  = WebDriverWait(browser, 10).until(
EC.element_to_be_clickable((By.XPATH, "//*[contains(text(), 'Transaction Limit')]")))  
transaction.click();   
browser.find_element_by_xpath("//*[contains(text(), 'Issue')]").click(); 

导入语句将如下所示:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC 

使用相关htmlCredit卡字段更新问题通常在iframe中生成。虽然看起来不像你的情况?您尝试过显式等待吗?您好,谢谢您的回复!在我的原始代码中,我确实添加了等待,但它并没有解决问题。如果我选择信用卡,我似乎只能点击发行按钮。您知道我是否可以在html代码中识别这种条件依赖关系吗?
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC