Selenium Python—如果没有保存文本字段当前值的属性,如何获取该值?

Selenium Python—如果没有保存文本字段当前值的属性,如何获取该值?,python,html,selenium,dom,Python,Html,Selenium,Dom,因此,我的问题如下,HTML中的输入标记没有反映此输入字段中当前文本的属性(想想谷歌搜索中保存您输入值的“值”属性),所以问题是-我有哪些选项来获取此文本以断言它 我已经尝试了input.text和input.get_attribute()-运气不好 来自-internet.herokuapp.com的示例: 代码段: def sample_test(): driver = webdriver.Firefox() driver.maximize_window() bas

因此,我的问题如下,HTML中的输入标记没有反映此输入字段中当前文本的属性(想想谷歌搜索中保存您输入值的“值”属性),所以问题是-我有哪些选项来获取此文本以断言它

我已经尝试了input.text和input.get_attribute()-运气不好

来自-internet.herokuapp.com的示例:

代码段:

def sample_test():
    driver = webdriver.Firefox()
    driver.maximize_window()
    base_url = "http://the-internet.herokuapp.com/login"
    driver.get(base_url)
    input = driver.find_element(By.XPATH, "//input[@id='username']")
    print(input.text) # I expect this to print nothing as at this point the field is empty
    input.send_keys("asdasd")
    print(input.text) # Here I was hoping it will print "asdasd" but was also empty

您可以获得元素
属性值,如下所示:

input_text = driver.find_element(By.XPATH, "//input[@id='username']")get_attribute("value")

通常输入元素包含文本值作为值属性,而不是“文本”

您是否尝试过
input.get\u attribute(“value”)
?您看到附加的img I了吗?HTML中没有“value”属性——如果有,我就不会问这个问题,只使用get_属性方法。我的问题是,当值“asdasd”未保存在HTML的任何属性中时,如何获取该值。您是否尝试获取该属性?请接受我的道歉-我现在确实尝试了,是的-该值已打印到控制台!你介意分享一下这是怎么可能的吗?我不是一个前端开发人员,只是一个自动化开发人员,所以我想说这是一些JavaScript问题,我不知道。欢迎你单独提问,因为这绝对是一个新问题。知道答案会很有趣!我自己也问过这个问题,有几个答案在那里得到了回答,但正确的答案是我自己回答的,这就是我们的FE开发者对我的描述。你可以在这里看到: