【问题标题】:How to get contents of a text box using selenium with python如何使用 selenium 和 python 获取文本框的内容
【发布时间】:2017-07-25 09:17:05
【问题描述】:

下面是我必须从中获取值的文本框的 html 代码

<input id="textfield-3586-inputEl" class="x-form-field x-form-text x-form-text-default" data-ref="inputEl" role="textbox" size="1" name="name" autocomplete="off" componentid="textfield-3586" type="text"/>

我用过

element=driver.find_element_by_xpath(".//*[@data-ref='formWrap']/div[4]/div/div/div/input")
element.getAttribute("value")

这不会返回任何值

【问题讨论】:

  • 你能用 element.getText();确保在使用此之前在文本框中输入一些内容
  • 使用 get_attribute('value')
  • 我在你的 html 中没有看到 value 属性
  • get_attribute("value") 有效。页面未加载,因此未返回任何值

标签: python selenium selenium-webdriver textbox getattribute


【解决方案1】:
  1. 您的 xpath 是否正确?

我会推荐 Firefox 并安装以下扩展:

“萤火虫”、“萤火虫的寻火者”、“火道”。 在 FirePath 中复制“.//*[@data-ref='formWrap']/div[4]/div/div/div/input”,然后单击 Eval。如果屏幕保持空白,那么您的 xpath 有问题,或者如果它突出显示多个字段,那么您知道您的 xpath 不够具体。

  1. 查看是否可以向文本框发送内容,例如 WebElement.sendKeys("send some text");

  2. 看看能不能用getText方法例如:WebElement.getText(); 如果这不起作用,请尝试放慢速度,在执行 getText() 之前使用隐式等待。

  3. 在 firebug 中,您还可以查看 DOM 属性。确保您使用了正确的属性

【讨论】:

    猜你喜欢
    • 2014-10-15
    • 2013-06-06
    • 1970-01-01
    • 1970-01-01
    • 2023-04-07
    • 2021-01-12
    • 1970-01-01
    • 1970-01-01
    • 2015-10-28
    相关资源
    最近更新 更多