【问题标题】:What else can you do if the inspect element doesnt work?如果检查元素不起作用,你还能做什么?
【发布时间】:2021-03-31 17:49:21
【问题描述】:

我一直在尝试使用 selenium 在 python 中打印帐户余额文本。我去chrome,检查元素,复制xpath,把它放在VS中,它说找不到xpath。我对 CSS 选择器、完整的 xpath、尝试创建自己的 xpath、按类名等进行了同样的操作。我尝试了它拥有的每个选项。没有任何工作。当你遇到这种情况时你会怎么做?它在网站上,它必须可以在后台某个地方访问。必须是一种抓住它的方法。我已经能够让网站上的其他文本正常显示。

这只是一个股票模拟器游戏,如果你想登录并尝试获取正确的检查元素,我将它向公众开放。

它生成的xpath:

/html/body/div[4]/div[3]/div[1]/div[2]/ul/li[1]/span

我如何在 VS 中拥有它:

driver.find_element_by_xpath('/html/body/div[4]/div[3]/div[1]/div[2]/ul/li[1]/span')

VS中的错误:

Unable to locate element: {"method":"xpath","selector":"/html/body/div[4]/div[3]/div[1]/div[2]/ul/li[1]/span"}

【问题讨论】:

    标签: python selenium xpath web-scraping webdriver


    【解决方案1】:

    要获取Net Worth 的金额,请使用WebDriverWait() 并等待visibility_of_element_located() 并关注xpath

    print(WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH,"//div[./span[text()='Net Worth']]/following::span[1]"))).text)
    

    print(WebDriverWait(driver,10).until(EC.visibility_of_element_located((By.XPATH,"//ul[@class='list list--kv']/li[1]/span"))).text)
    

    您需要导入以下库。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-03
      • 1970-01-01
      • 2012-11-17
      • 2016-05-07
      • 1970-01-01
      • 1970-01-01
      • 2020-07-09
      • 1970-01-01
      相关资源
      最近更新 更多