我正在尝试使用Jsoup Java库从在线随机单词生成器中提取随机单词。这是我的代码,其中有指向随机单词生成器的链接:

public class getWord {

    public static void grabWord(){

Document doc = Jsoup.parse( "UTF-8", "http://watchout4snakes.com/CreativityTools/RandomWord/RandomWord.aspx");

Elements links = doc.getElementsByClass("randomWord");
 String linkText = links.text();
System.out.println(linkText);
}
}


如果您进入随机词生成器链接并查看源,则其中包含随机词:

<span id="tmpl_main_lblWord" class="randomWord">indictment</span>


如您所见,该类是随机单词,我正在尝试使用getElementsByClass方法获取该元素,因为它是页面上具有randomWord类的唯一元素。我也尝试使用doc.select("span[class$=randomWord]")产生相同的结果,但没有打印。有人可以帮我吗?谢谢。

最佳答案

您正在使用接受HTML内容的parse方法。您需要使用一个URL代替。更换

Jsoup.parse("UTF-8", "http://watchout4snakes.com/CreativityTools/RandomWord/RandomWord.aspx");




Jsoup.parse(new URL("http://watchout4snakes.com/CreativityTools/RandomWord/RandomWord.aspx"), 4000);


更方便的是:

Jsoup.connect("http://watchout4snakes.com/CreativityTools/RandomWord/RandomWord.aspx").get();

10-08 17:29