Momentan mache ich ein Programm (in Java), das alle Streamers auf Twitch (Video-Streaming-Site) von einer gegebenen URL e.g. ergreift und sie mit Jsoup in eine Textdatei auflistet.Jsoup sieht keinen Text auf der Website
Egal, was ich versuche, es scheint, als ob ich die Namen der Streamer nicht bekommen kann. Nach einer Weile entdeckte ich, dass die Seitenquelle aus irgendeinem Grund nicht die Namen der Streamer enthält, von denen ich denke, dass sie das Problem sein könnten.
Hier ist mein Code derzeit.
public static void main(String[] args) throws IOException {
int i = 0;
PrintWriter streamerwriter = new PrintWriter("streamer.txt", "UTF-8");
Document doc = Jsoup.connect(https://www.twitch.tv/directory/game/Hearthstone%3A%20Heroes%20of%20Warcraft).get();
Elements streamers = doc.getElementsByClass("js-profile-link");
for (Element streamer : streamers) {
i++;
System.out.println(i + "." + streamer.text());
streamerwriter.println(i + "." + streamer.text());
}
streamerwriter.close();
}
Jede Hilfe würde sehr geschätzt werden.
bearbeiten Sie Ihre Frage zu i nclude den Inhalt des Dokuments vor der for-Schleife - nur um zu bestätigen, ob es die erwarteten Informationen enthält - dies könnte der Grund sein, warum Ihr Code den Inhalt nicht sehen kann. – ishmaelMakitla
Okay, ich habe den Code ein bisschen geändert. Danke auch für die Bearbeitung meiner Frage. – Chimichanga
, weil der Teil, den Sie wollen, von lazily geladen wird. Sie sollten diese faule Anfrage wissen und diese URL durch jsoup analysieren. Bitte überprüfen Sie diese Frage aus: http://stackoverflow.com/questions/17407603/how-to-use-jsoup -in-site-das-hat-lazyload-scrolloader-js – Sarkhan