2013-10-09 55 views
1

我正在使用JSoup庫來提取網頁中的文本。以下是我的代碼如何從網頁中提取所有文本

Document doc; 

try { 
URL url = new URL(text); 


doc = Jsoup.parse(url, 70000); 

Elements paragraphs = doc.select("p"); 
for(Element p : paragraphs) 
{ 

    textField.append(p.text()); 
    textField.append("\n"); 
} 
} 
catch (Exception ex) 
{ 

    ex.printStackTrace(); 

} 

在這裏,我只能從「p」標籤獲取文本。但我需要頁面中的所有文本。我該怎麼做?這可能是通過循環節點,但我剛開始使用JSoup,並沒有那麼好。請幫忙。

+0

已經編輯我的答案,讓我知道如果任何混淆。 – Jhanvi

回答

1

試試這個:

String text = Jsoup.parse(new URL("https://www.google.com"), 10000).text(); 
System.out.println(text); 

這裏,10000以毫秒爲單位,指的是超時。

+0

你好,謝謝你的回覆。無論如何,它似乎不是從wikipadia提取文本和所有 –

+0

@Artificial_Intelligence我用它從維基百科提取文本,但可能是我的要求是不同的。例如http://en.wikipedia.org/wiki/Java_%28programming_language%29,我在上面的代碼中使用了這個URL。 – Jhanvi

0

您可能想要使用Boilerpipe,因爲您不需要HTML解析,而只需要文本提取。這應該是更快,更少的CPU消耗。

例子:

URL url = new URL("http://www.example.com/some-location/index.html"); 
// NOTE: Use ArticleExtractor unless DefaultExtractor gives better results for you 
String text = ArticleExtractor.INSTANCE.getText(url); 

來自:https://code.google.com/p/boilerpipe/wiki/QuickStart