首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jsoup javascript按钮单击

Jsoup javascript按钮单击
EN

Stack Overflow用户
提问于 2012-01-04 10:32:29
回答 1查看 4.6K关注 0票数 3

如何使用Jsoup在javascript按钮上执行单击?

代码语言:javascript
复制
 String html = Jsoup.connect(url)
                .followRedirects(true)
                .data("login_name", username)
                .data("password", userpassword)
                .method(Method.POST).get().html();

这是我用来在网站中设置用户名和密码字段的代码,然而,当我抓取html时,它给我的是登录页面的html,其中填写了页面的字段,而不是登录后的页面。所以这一定意味着Jsoup只是简单地填写了字段,但没有让我登录。我该怎么做呢?此外,登录按钮没有id元素,也没有name元素。它只有javascript。抱歉,如果我说得不够清楚,我是个新手。下面是表单的html代码:

代码语言:javascript
复制
 <form name="form" id="form" method="POST" action="/portal/login?etarget=login_form" autocomplete="off"> 

这是登录按钮的html代码:

代码语言:javascript
复制
<a href="javascript:document.form.event_override.value='login';document.form.submit();" class="btn_css">    

我如何使用Jsoup‘点击’登录按钮?此外,我尝试使用.post()方法而不是.method(Method.POST)方法,但是当我这样做时,我的程序不能工作,并给我这样的消息:" error : 400error loading URL“

此外,我没有自己的网站,我正在使用的本机应用程序,我正在为Android构建。

EN

回答 1

Stack Overflow用户

发布于 2012-01-06 18:17:13

当在connect方法中传递URL时,不传递登录页面URL,而是传递主页链接。

代码语言:javascript
复制
Document doc = Jsoup.connect("http://www.website.com/home.php")
  .data("email", "myemailid")
  .data("pass", "mypassword")
  // and other fields which are being passed in post request.
  .userAgent("Mozilla")
  .post();  

试一试,你就会得到你的结果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8721364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档