gpt4 book ai didi

python - 使用 Selenium Python 从表 (td) 读取文本后不打印任何内容

转载 作者:太空宇宙 更新时间:2023-11-03 16:25:44 24 4
gpt4 key购买 nike

我正在尝试打印表格单元格的文本,但没有打印任何内容。它正在识别元素,但似乎无法找到文本。

HTML 看起来像这样:

<tr style="font-weight: 600;">
<td>
"
Available Balance
"
</td>
<td id="testBalance" class="text-right ng-binding" style="font-weight: 600;">

664,265.314
</td>

我正在尝试通过运行读取(并打印)“664,256.314”的值:

Balance=driver.find_element_by_id("testBalance")
print (Balance.text)

它找到了元素,但没有打印任何内容。有谁知道为什么会发生这种情况?

最佳答案

我认为这只是一个时间问题 - 在您检索其值时余额尚未设置/更新。添加Explicit Wait等待文本出现:

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

class wait_for_any_text(object):
def __init__(self, locator, text_):
self.locator = locator
self.text = text_

def __call__(self, driver):
try:
element_text = EC._find_element(driver, self.locator).text
return element_text.strip()
except StaleElementReferenceException:
return False

wait = WebDriverWait(driver, 10)
balance = wait.until(wait_for_any_text((By.ID, "testBalance")))

print(balance.text)

关于python - 使用 Selenium Python 从表 (td) 读取文本后不打印任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37993099/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com