无法通过 css 或 xpath 获取元素值

弗朗切斯科·巴蒂斯蒂

我试图通过 xpath 和 css 获取元素的值,并尝试使用 .text 和 .get_attribute('value'),但没有办法得到它。

元素:

<div class="itemWrapper-tp4JSoHa"> [flex]
  <div class="value-tp4JSoHa">1205.61</div

代码1:

WebDriverWait(driver, 60).until(EC.visibility_of_element_located((By.XPATH, "//*[@class='value-tp4JSoHa']")))
equity = driver.find_element_by_xpath("//*[@class='value-tp4JSoHa']")
num_equity = equity.text #int(equity.text) 
return num_equity

结果 = 0

代码2:

WebDriverWait(driver, 60).until(EC.visibility_of_element_located((By.XPATH, "//*[@class='value-tp4JSoHa']")))
equity = driver.find_element_by_css_selector('div.itemWrapper-tp4JSoHa:nth-child(2) > div:nth-child(1)').get_attribute('value') 
return equity

结果 = 无

有什么解决办法吗?

zx485

参考您的代码 1 示例:

  • 使用现在返回结果列表的“聪明”技巧替换find_element_by_xpathfind_elements_by_xpath(细微差别)

  • 现在要么遍历列表,要么选择具有索引的第一个元素[0]

    num_equity = equity[0].text #int(equity.text) 
    

    这给了你1205.61

  • 如果要返回列表中元素的计数,请使用

    num_equity = len(equity)
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章