【问题标题】:How to handle html buttons on a Jsoup form-post request如何处理 Jsoup 表单发布请求上的 html 按钮
【发布时间】:2015-10-08 15:38:17
【问题描述】:

我想检查以下 html 代码生成的响应。

<form class="init" action="Initz.php" method="post">
<table border="0" cellpadding="6" cellspacing="0">
<tr><td>Name</td><td><input type="text" name="name" class="init"></td></tr>
<tr><td>Password</td><td><input type="text" name="pass" class="init"></td></tr>
<tr><td colspan=2><input type="radio" name="x" value="1" checked="checked">Enter</td></tr>
<tr><td colspan=2><input type="radio" name="x" value="2">Register</td></tr>
<tr><td colspan=2><input type="submit" value="Login"> &nbsp <input type="reset" value="Reset"></td></tr>
</table>
</form>

该页面包含 2 个输入文本字段,由属性“text”处理,2 个单选输入,默认选择“Enter”和 2 个按钮,它们没有“名称”属性,因此我没有想法如何处理它们。

到目前为止,我已经尝试了几种使用 Jsoup 的替代方案,并且基本上专注于以下代码,但我没有得到响应,而是不断获取起始页面的代码,可能是由于发送的请求不完整:

Document doc = Jsoup.connect("example http")
                     .data("name","myname")
                     .data("pass","mypass")
                     .data("x","1")
                     .post();

我怎样才能有效地处理最后一个输入行并发布请求?

【问题讨论】:

  • 您必须在浏览器发送请求时检查请求 - 可能它包含更多信息,例如 cookie 等。如果您将 URL 添加到问题中,会更容易理解。
  • @TDG 使用 FormElement 可能会更快。请参阅:stackoverflow.com/questions/31190892/…
  • @Stephan 酷!我不知道。看起来很有用,谢谢。

标签: java dom post html-parsing jsoup


【解决方案1】:

您可以让 Jsoup 为您发送表格。只需将 (name, pass 和 x) ant 的变量值传递给它,剩下的就交给它了。

详情请看这里:How to fill a form with Jsoup?

【讨论】:

    猜你喜欢
    • 2017-08-06
    • 2014-06-09
    • 1970-01-01
    • 2018-07-31
    • 2021-04-14
    • 1970-01-01
    • 2021-06-18
    • 2020-10-06
    • 1970-01-01
    相关资源
    最近更新 更多