Java Scrape

paulpils

Cadet 2nd Year
Registriert
Sep. 2017
Beiträge
20
Hey Leute, bastel gerade ein JavaFx Programm und würde gerne Daten von einer Webseite einlesen, aber es klappt einfach nicht.
1585767121180.png

Die daten die ich einlesen will sind blau markiert, habe es schon mit verschiedenen Varianten probiert aber es funktioniert einfach nicht. Unter anderem auch so:
Java:
Document page = Jsoup.connect("https://info.gesundheitsministerium.at/").userAgent("Jsoup scraper").get();
        String selector = "#cTrend > div > div.canvasjs-chart-tooltip > div > span";
        Elements scraperElements = page.select(selector);
        for(Element e:scraperElements) System.out.println(e.text());
Es wird einfach nichts ausgegeben.
Danke für eure Hilfe!
 
Danke!! Ich bin schon fast verzweifelt und das ist die Lösung so leicht :D vielen Dank!
 
die saubere loesung der datenbeschaffung haetten wir damit ja geklaert.

ich liefere dennoch zwei kommentare zur vorgehensweise in faellen, wo die daten nicht derartig schoen strukturiert sind:
  • Jsoup.connect() laedt und parsed ein dokument, was an dieser stelle page beinhaltet ist also der quelltext; den kannst du dir per view-source:https://info.gesundheitsministerium.at anschauen. wie du hier siehst, ist das, was du letztlich siehst, der DOM tree, der durch einen <script>-tag generiert wird. das geschieht erst nach dem rendern der webseite, was die obige methode nicht fuer dich uebernimmt. du kannst da also nicht mit dem inspector rangehen; der zeigt bloss die dynamisch gerenderte webseite.
  • das element, das den tooltip beinhaltet, existiert nach dem initialen rendering ueberhaupt nicht; das wird erst nach einem mouseover ueber den graphen durch d3 generiert.
sofern wie hier der quellcode derartig obfuskiert vorliegt kann man sich mal den network tab der devtools anschauen (und ggf. nach XHR filtern - hier aber nicht). so kommt man dann auch zu der adresse, auf der die daten liegen.
 
Zurück
Oben