我正在尝试使用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]")
得到了相同的结果,没有打印。谁能帮助我?感谢。
答案 0 :(得分:4)
您正在使用接受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();
更方便的是:
{{1}}