2014-02-19 120 views
0

我想在Eclipse中運行一個Web刮板,使用Jsoup,可以採用此頁上的教授的名字:yu.edu/faculty和打印出來。這是我的代碼:「線程異常」main「java.lang.NullPointerException」錯誤

import java.io.IOException; 

import org.jsoup.Jsoup; 
import org.jsoup.nodes.Document; 
import org.jsoup.nodes.Element; 
import org.jsoup.select.Elements; 

public class YUscraper { 

    public static void main(String[] args) throws IOException { 

     // fetches & parses HTML   
     String url = "http://yu.edu/faculty/"; 
     Document document = Jsoup.connect(url).get(); 

     // Extract data 
     Element content = document.getElementById("mainlist"); 
     Elements names = content.getElementsByTag("a"); 


     // Output data 
     for (Element name : names) { 
      System.out.println("Name: " + name.text()); 
     } 
    } 

} 

我收到此錯誤:

Exception in thread "main" java.lang.NullPointerException 
at YUscraper.main(YUscraper.java:18) 

我是比較新的這所以原諒我,如果我失去了一些東西真的很明顯。我用了很多我已經看到的例子來說明這一點,但我仍然不明白IOException是什麼以及它意味着發現了一個異常。請幫忙,謝謝!

回答

0

線18

有元素

元素名稱= content.getElementsByTag(「a」);

似乎沒有標籤與ID「mainlist」在從http://yu.edu/faculty/檢索的HTML中。

好像你試圖訪問標籤main-nav而不是mainlist。

0

Element content = document.getElementById("mainlist");

內容返回爲空,所以null.getElementsByTag是給錯誤..看起來像HTML不通過'mainlist'

+0

謝謝。我很困惑。我很感激。 –

相關問題