Java: Youtube-Suchergebnisse auswerten

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Skybird.

    Java: Youtube-Suchergebnisse auswerten

    Huhu,

    Vorweg: Ich arbeite mit SWT.

    Ich suche per Browser-Widget Videos. Die Suche ist klar und auch wie man explizit ein Video abspielt. Nur weiß Ich noch nicht, wie Ich die Suchergebnisse auswerte. Ich würde einfach gerne das erste Video aus den Suchergebnissen abspielen, bzw. einfach die VideoID filtern.

    Würde das mit Java(&SWT)-Boardmitteln gehen ?

    LG skybird
    //Kommentar
    Ich würde einfach gerne das erste Video aus den Suchergebnissen abspielen, bzw. einfach die VideoID filtern.
    Kriegst du die Suchergebnisse als Array zurück? Ich weiß ja nicht mal, wie genau du die Suchergebnisse erhältst ^^
    Versuchs mal mit

    Java-Quellcode

    1. import java.io.BufferedReader;
    2. import java.io.InputStreamReader;
    3. import java.net.URL;
    4. import java.net.URLConnection;
    5. import javax.swing.text.html.HTML;
    6. import javax.swing.text.html.HTMLDocument;
    7. import javax.swing.text.html.HTMLEditorKit;
    8. public class LinkExtractor {
    9. public static void main(String[] args) throws Exception {
    10. URL url = new URL("http://www.youtube.com/results?search_query=blabla&aq=f");
    11. URLConnection con = url.openConnection();
    12. BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream()));
    13. HTMLEditorKit editorKit = new HTMLEditorKit();
    14. HTMLDocument htmlDoc = new HTMLDocument();
    15. htmlDoc.putProperty("IgnoreCharsetDirective", Boolean.TRUE);
    16. editorKit.read(br, htmlDoc, 0);
    17. HTMLDocument.Iterator iter = htmlDoc.getIterator(HTML.Tag.A);
    18. while (iter.isValid()) {
    19. if(iter.getAttributes().getAttribute(HTML.Attribute.DIR)=="ltr")
    20. {
    21. url = new URL("http://www.youtube.com"+iter.getAttributes().getAttribute(HTML.Attribute.HREF));
    22. }
    23. iter.next();
    24. }
    25. }
    26. }


    ist etz schnell aus dem Kopf geschrieben müsste aber funktionieren