2012-04-11 11 views
0

ich JSoup bin mit Bewertungen von einer bestimmten Webseite in Amazon retrive und was ich jetzt habe, ist dies:Abrufen von Bewertungen von Amazon JSoup mit

Document doc = Jsoup.connect("http://rads.stackoverflow.com/amzn/click/B002JM202I").get(); 
    String title = doc.title(); 

    Element reviews = doc.getElementById("productReviews"); 
    System.out.println(reviews); 

Das gibt mir den Block von HTML, die die Bewertungen haben aber Ich will nur den Text ohne all die Tags div etc. Ich möchte dann all diese Informationen in eine Datei schreiben. Wie kann ich das machen? Vielen Dank!

+0

Jsoup hat viele Möglichkeiten, um Informationen zu extrahieren, und sicherlich haben Sie die Tutorials durchgegangen (sie sind nicht so groß). In diesem Sinne, was hast du probiert und wo steckst du fest? –

Antwort

2

Verwenden text() Methode

System.out.println(reviews.text()); 
1

Während text() finden Sie eine Reihe von Text erhalten, müssen Sie zunächst auf select(...) Methoden der Verwendung jsoup wollen werden das Problem in einzelne Berichtselemente zu unterteilen. Ich gebe Ihnen die erste große Abteilung, aber es wird an Ihnen, es zu unterteilen weiter:

public static List<Element> getReviewList(Element reviews) { 
    List<Element> revList = new ArrayList<Element>(); 
    Elements eles = reviews.select("div[style=margin-left:0.5em;]"); 
    for (Element element : eles) { 
    revList.add(element); 
    } 
    return revList; 
} 

Wenn Sie jedes Element zu analysieren, sollten Sie sehen, wie amazon weiter die Informationen einschließlich der Titel des gehaltenen aufteilt Überprüfung, das Datum der Überprüfung und der Textkörper, den es enthält.

Verwandte Themen