【问题标题】:Change value field in html input tag using selenium in python在python中使用selenium更改html输入标签中的值字段
【发布时间】:2017-12-04 13:05:25
【问题描述】:

html 标签。

<input id="input-value" title="Search" type="text" value="">

我想将 value 属性从 "" 更改为 "foo"。

<input id="input-value" title="Search" type="text" value="foo">

我正在尝试使用 send_keys 进行此操作,但没有成功。

ele = browser.find_element_by_id("input-value")
ele.send_keys("foo")
ele.send_keys(Keys.RETURN)`   

【问题讨论】:

  • 您到底想达到什么目的?通过 UI 更改输入内容不会更改底层 value 属性。
  • 是的,想通了。谢谢@DebanjanB。我正在尝试更改搜索输入标签的内容。该网站(web.whatsapp)正在使用 react.js。我正在尝试使用该字段按名称搜索。

标签: python html selenium


【解决方案1】:

要编辑 value 属性并将值 foo 分配给它,您可以使用以下使用 JavascriptExecutor 的代码块:

ele = browser.find_element_by_css_selector("input#input-value")
browser.execute_script("arguments[0].setAttribute('value','foo')", ele)

【讨论】:

    【解决方案2】:

    在 .send_keys() 之前使用 .click(),例如:

    ele = browser.find_element_by_id("input-value")
    ele.click()
    ele.send_keys("foo")
    ele.send_keys(Keys.RETURN)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-21
      • 2021-11-25
      • 2021-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-24
      • 1970-01-01
      相关资源
      最近更新 更多