使用JSoup和Java我想通过在下拉列表中选择一个选项来获取动态添加的数据。一个更好地展示我想表达的内容的例子是http://www.bulletin.uga.edu/CoursesHome.aspx。 by前缀/主要下拉列表中的每个下拉选项都动态创建一个下拉列表,该下拉列表提供所有课程或选项,即所有课程"。选择课程时,它会动态添加所有课程信息。如果您选择所有课程,则会添加该专业的所有课程数据。 我可以获得所有列表值。到目前为止,这是我的代码。我只是不知道如何使用这些值加载所有数据并迭代所有数据。
package getInfo;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
public class getInfo {
public static void main(String[] args){
try{
Document doc = Jsoup.connect("http://www.bulletin.uga.edu/CoursesHome.aspx").get();
org.jsoup.select.Elements links = doc.select("option");
for(Element e: links)
{
//System.out.println(e);
//System.out.println(e.text());
System.out.println(e.attr("value"));
}
} catch (IOException ex){
Logger.getLogger(getInfo.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
这将返回所有下拉列表值的列表
答案 0 :(得分:1)
JSoup不是最好的选择。 JSoup主要是一个HTML解析器。虽然它提供了一些有用的方法来获取内容,但它并不是一个无头浏览器。
我建议你在这里使用Selenium。它可以轻松处理动态添加的数据。