屏幕抓取-如何用Ruby和机械化解析格式错误的HTML



我正在使用机械化来导航一个HTML格式严重错误的网站。特别是,我有一个页面,它在服务器理智地处理请求的表单之外有复选框。

我想选中这些框,然后单击表单外的"提交"按钮,但是,我不能使用Form.checkbox_with,因为我没有Form对象,我只有Page。我可以用找到页面上的复选框

page.search("//input[@name='silly-checkbox']")

但我以后无法检查它,因为Nokogiri只用于刮擦,不跟踪状态。这不正确吗?

当我的复选框不在表单中时,如何获取Mechanize::Form::Checkbox对象?

您可以使用Nokogiri手动加载远程页面,然后通过在表单外找到复选框并将其包装来修复标记,并根据固定的HTML代码自行构建机械化类。

您可以通过删除和合并新字段来修改表单。

form.add_field!('gender', 'male')

rdoc此处

相关内容

  • 没有找到相关文章

最新更新