Python 在按钮上查找特定文本

Python 在按钮上查找特定文本,python,selenium,selenium-webdriver,xpath,xpath-1.0,Python,Selenium,Selenium Webdriver,Xpath,Xpath 1.0,我有下面的按钮 <button class="btn-standard buyButton currency-coins">Buy Now for 3k <button> 完整的innerText是立即购买3k。因此,要通过部分innerText识别并单击元素,即立即购买,您必须使用所需的set进行归纳,并且可以使用以下任意一种: 使用xpath和contains() 使用xpath和开始-with() 注意:您必须添加以下导入: from selenium.we

我有下面的按钮

<button class="btn-standard buyButton currency-coins">Buy Now for 3k <button>

完整的innerText是立即购买3k。因此,要通过部分innerText识别并单击元素,即立即购买,您必须使用所需的set进行归纳,并且可以使用以下任意一种:

  • 使用xpath和
    contains()

  • 使用xpath和
    开始-with()

  • 注意:您必须添加以下导入:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    

    • 完整的内部文本是立即购买3k。因此,要通过部分innerText识别并单击元素,即立即购买,您必须使用所需的set进行归纳,并且可以使用以下任意一种:

      • 使用xpath和
        contains()

      • 使用xpath和
        开始-with()

      • 注意:您必须添加以下导入:

        from selenium.webdriver.support.ui import WebDriverWait
        from selenium.webdriver.common.by import By
        from selenium.webdriver.support import expected_conditions as EC
        

      我收到以下错误:
      StaleElementReferenceException:Message:的元素引用已过时;要么元素不再附加到DOM,要么它不在当前框架上下文中,要么文档已刷新
      我忘了提到,单击按钮后会出现“购买按钮”。例:我按一下按钮,1秒后出现“购买按钮”@PaulVio查看更新的答案并告诉我状态。是的,是工人。谢谢。但是你能解释一下webdriverwait和“EC”是什么意思吗“用2-3个字?@PaulVio用所有必要的参考资料更新了答案。如果需要进一步帮助,请告诉我。我收到以下错误:
      StaleElementReferenceException:Message:的元素引用已过时;要么元素不再附加到DOM,要么它不在当前框架上下文中,要么文档已刷新
      我忘了提到,单击按钮后会出现“购买按钮”。例:我按一下按钮,1秒后出现“购买按钮”@PaulVio查看更新的答案并告诉我状态。是的,是工人。谢谢。但是你能解释一下webdriverwait和“EC”是什么意思吗“用2-3个字?@PaulVio用所有必要的参考资料更新了答案。如果你需要进一步的帮助,请告诉我。但它不起作用意味着什么?你有没有试过阅读我认为是Selenium的文档(因为你的问题不包含这些信息,我只能猜测)
      driver。通过xpath('//button[text()=“Buy Now”]')查找元素。单击()
      这一个不起作用:)这意味着什么,但它不起作用?你有没有试过阅读我认为是Selenium的文档(因为你的问题不包含这些信息,我只能猜测)
      driver。通过xpath('//button[text()=“Buy Now”]')查找元素。单击()
      这一个不起作用:)
      WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//button[starts-with(., 'Buy Now')]"))).click()
      
      from selenium.webdriver.support.ui import WebDriverWait
      from selenium.webdriver.common.by import By
      from selenium.webdriver.support import expected_conditions as EC