【发布时间】:2016-04-11 18:46:55
【问题描述】:
我正在尝试使用具有一些禁用字段的 ruby、Watir-webdriver 和 Nokogiri 来抓取表单值。
<input type="text" value="Would be auto populated based on Requirement ID" class="form-control" id="SkillId" disabled="disabled" name="SkillId">
但在显示中显示值“Java,Oracles,Mysql”
我想废弃这些数据,我使用了以下代码
doc.at('input[@name="SkillId"]')['value']
但它会提取“将根据要求自动填充”
请帮助如何提取禁用的字段数据。
我试过了
doc.at('input[@disabled="disabled"]')
这仅给出具有实际值的禁用字段值,但是在删除禁用属性后何时出现值。
【问题讨论】:
-
“Java、Oracles、Mysql”如何显示?我只看到文本字段显示
value或placeholder属性? -
嗨贾斯汀看我附上的截图
-
这会给你所有被禁用的输入
doc.at('input[@disabled="disabled"]') -
这很有趣。您确定您正在查看正确元素的 HTML 吗?该控件是由哪个库生成的?
-
听起来您在谈论从使用 DHTML 更改的标签/字段中提取信息。 Nokogiri 无法为您提供帮助,除非您可以在 DHTML 修改它之后捕获该 HTML。在浏览器中关闭 JavaScript 并查看页面,或在命令行中使用
nokogiri your_url或wget your_url看看是否可以找到信息。如果没有,则 DHTML 正在进行中,在浏览器加载后修改内容。
标签: javascript html ruby nokogiri watir-webdriver