Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jsoup-如何从多个操作中选择表单的一个操作,然后选择一个选项_Java_Html_Jsoup - Fatal编程技术网

Java Jsoup-如何从多个操作中选择表单的一个操作,然后选择一个选项

Java Jsoup-如何从多个操作中选择表单的一个操作,然后选择一个选项,java,html,jsoup,Java,Html,Jsoup,我正在使用Jsoup开发一个应用程序。下面的代码无法执行特定操作(我每次都选择),然后从下拉菜单中选择一个选项。请帮我解释一下为什么这不起作用……或者给我其他建议 html代码。。默认情况下,帐户处于选中状态。如何选择其他选项 <form name="prod_sel" action="course_open4.asp" method="post"> <p><select name="course" size="1"> <option value=

我正在使用Jsoup开发一个应用程序。下面的代码无法执行特定操作(我每次都选择),然后从下拉菜单中选择一个选项。请帮我解释一下为什么这不起作用……或者给我其他建议

html代码。。默认情况下,帐户处于选中状态。如何选择其他选项

<form name="prod_sel" action="course_open4.asp" method="post">
  <p><select name="course" size="1">

<option value="ACCT" selected>ACCT</option>
<option value="AE">AE</option>
<option value="ARC">ARC</option>
<option value="ARE">ARE</option>
</select></p> 

我真的不知道你想做什么,但我认为这是一个错误的工作工具的情况。JSoup是一个html解析器,实际上并不运行页面。如果您试图自动浏览网站,您将需要使用。

我已经尝试了Selenium webdriver和RC。他们正在做这项工作,但需要很长时间。我想做的是选择一个选项,然后单击提交。然而,该页面有许多下拉菜单,每一个都有不同的操作。你能定义一个长时间吗?我使用selenium来运行测试,导航到页面、单击一些按钮、键入一些文本、提交表单并在下一页确认输出所需的时间很少超过10秒。。。如果您的问题是难以找到特定元素,那么您需要使用css选择器来定义所需的元素。如果可能的话,您甚至应该为菜单项定义一个id,这样就很容易找到它们并选择正确的选项。你能提供更多关于你的用例的上下文吗?听起来JSoup绝对不是您想要的…打开浏览器并提取一些数据需要3分钟以上的时间。我只需要通过填充表单来获取一些数据。我在其他测试中使用了selenium,但这次我认为使用html解析器(如Jsoup)可能会更快。我需要数据在15秒内进入应用程序,selenium在这段时间内无法打开浏览器并在我的电脑中获取数据。感谢您的帮助3分钟太长了,听起来您的页面加载非常慢(易于手动检查),或者您的设置有错误,并且花费的时间远远超过了应有的时间。如果你担心速度,我建议你去看看。速度快一点,因为它是无头的。就我个人而言,我会试图弄明白为什么要花这么长时间才能打开浏览器。。。Jsoup不运行html,只解析它,所以不能单击web元素并提交表单。
<p align="center"><input type="submit" value="Submit" name="B1"></p></FORM>
   <form name="prod_sel" action="course_open3.asp" method="post">
  <p><select name="course" size="1">

<option value="ACCT" selected>ACCT</option>
<option value="AE">AE</option>
<option value="ARC">ARC</option>
<option value="ARE">ARE</option>
</select> </p> 

<p align="center"><input type="submit" value="Submit" name="B1"></p></FORM><div align="left">
public class test6 {
public static void main(String[] args)  {

     try{  

          Connection.Response loginForm = Jsoup.connect("MyURlAddress")
                    .method(Connection.Method.GET)
                    .execute();

          Document doc = Jsoup.connect("MyURlAddress")
                    .data("cookieexists", "false")
                    .userAgent("Mozilla")
                    .data("B1", "Submit")
                    .cookies(loginForm.cookies())
                    .post(); 

          System.out.println(doc);


            }catch(Exception e){  
                e.printStackTrace();  
            } 
}
}