1

是否可以在没有用户交互的情况下调用 html 表单提交?我知道可以通过 HttpClient 发出发布请求,但这并不能解决我的问题。

我需要以编程方式在网页上填写一些表单输入字段,然后“单击”提交按钮。因此,用户第一次启动应用程序时,他将通过 EditText 字段提供这些数据,应用程序将保存它们。与应用程序启动的其他时间相比,该表单将由应用程序在后台填写和提交。也许我可以使用 HtmlUnit,但我读到,让它在 android 上运行是很狡猾的。

仅供参考:网站上的表格是登录表格。它包括一些带有生成数据的隐藏输入,所以这就是我不能使用 HttpClient 的原因。我不知道要输入什么数据。

4

3 回答 3

1

我参加聚会有点晚了,但我遇到了同样的问题(如何填写表格然后以多种方式提交),并认为我会分享这个。

Salendroid 是一个很好的解决方案并且得到很好的支持:http ://selendroid.io/mobileWeb.html

似乎至少涵盖了所有基本交互。别大惊小怪。

于 2014-05-20T06:16:11.443 回答
1

不可能通过 webview 进行 DOM 操作,所以它已经过时了。

您可以将 HTTPClient 用于我将要描述的方法,我强烈建议您查看JSoup,在这种情况下使用起来要简单得多。您可以抓取页面的 HTML(以获取生成的数据),然后发送 post 请求以提交表单。所有这些都可以通过编程方式完成。还有很多关于 JSoup on stack 的文档和问题。

于 2013-06-07T17:24:23.917 回答
0

最后,我只是使用了WebView。我使用 WebView.loadUrl("javascript_code") 用 javascript 填写并提交了表单。
我仍然会使用 JSoup 来解析 html,非常感谢。

于 2013-06-09T09:50:22.800 回答