NEWS
[gelöst > thx] Parser -> Bitte, Starthilfe benötigt!
-
@sigi234
ich glaube da muss ich nochmal dran
Gut dass ich mir den Datenpunkt nochmal angeshen habe.
Die Zahlen scheiinen nicht für die beiden Imfungen zu stehen, sonern evtl. für- Eingetragene Impfungen
und - Teilgeimpfte
die
- Vollimmunisierte
kommen erst im nächsten Eintrag
EDIT:
gerade überprüft:
Das gibt es noch zu tun
- Eingetragene Impfungen
-
@homoran hi
ich wurde gefragt, ob ich evtl eine tabelle für ganz österreich erstellen könnte -
die daten sind ja etwas seltsam mit den ganzen ;.
aber ich gehe davon aus, das man mit schleifen die daten rausbekommt. es sind ja immer x-überschriften, dann kommen x-einträge.
man müßte wohl die zeilen auslesen, die durch "neue zeile , carriage return? " entstehen und wenn ich die einzelnen zeilen hätte, könnte ich die daten anhand der strichpunkte zerlegen
könntest du ein array einbauen, welches die zeilen enthält ?
-
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
aber ich gehe davon aus, das man mit schleifen die daten rausbekommt. es sind ja immer x-überschriften, dann kommen x-einträge.
ja! Dachte ich auch
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
man müßte wohl die zeilen auslesen, die durch "neue zeile , carriage return? " entstehen und wenn ich die einzelnen zeilen hätte, könnte ich die daten anhand der strichpunkte zerlegen
und genau daran bin ich gescheitert
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
könntest du ein array einbauen, welches die zeilen enthält ?
leider eben nicht
-
@homoran soll ich mal versuchen - in javascript ist das einfacher ?
-
-
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
soll ich mal versuchen - in javascript ist das einfacher ?
gerne!
Das Ganze ist sowieso nur eine riesige Krücke.
Wenn das jemand sieht, der Ahnung davon hat wird der lachend vom Stuhl fallen.Wie bereits früher geschrieben nutze ich solche Aufgaben auch um mich selber weiterzubilden.
Das beginnt ja schon damit, dass ich keine zwei Zahlen aus der Website herausbekomme, sondern nur die im Hintergrund liegende Tabelle, die täglich länger wird.
Damals hatte mir bei einem ähnlichen fall @OliverIO geholfen (glaube ich zumindest) versteckte Daten zu finden.
Hab das Thema jetzt genutzt um es auch auf diese Weise zu versuchen.Der zweite Dilettantismus beginnt dann mit meiner Unfähigkeit diese csv-Datei in sinnvolle Fragmente zu zerlegen, auf die dann einfach zuzugreifen ist.
Statt dessen arbeite ich hier mit Stringsuchen, zählvariablen usw. und bekomme selbst das nicht so hin, wie ich es will, so dass ich empirisch an den Zählvariablen schraube damit das Ergebnis reproduzierbar (??) gleich bleibt -
@homoran solange dich das nicht stört
die zeilen habe ich - mein problem:
@sigi234 - was genau für daten brauchst du - eine zeile enthält 64 einträge - die kann ich nicht alle anzeigen - wir müssen das einschränken - welche spalten interessieren ?
die über 800 zeilen sind nicht das problem - da kann man dann filtern oder suchen nach einer bestimmten region
-
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
was genau für daten brauchst du - eine zeile enthält 64 einträge
Sieh dir das mal an:
https://forum.iobroker.net/assets/uploads/files/1615385390117-oesiimpfen_tabelle.pngInteressant sind die Spalten G und I, sowie evtl. die Quoten in H und J
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
die zeilen habe ich
aus "wissenschaftlichem" Interesse: wie?
-
@homoran ja, das kenne ich - wenn du das csv file bis zum ende nach rechts ansiehst, sind das 64 spalten - das paßt auf keinen bildschirm - selbs wenn du dir in der vis eine ganze eite dafür nimmst, werden wohl nur 20 spalten sinn machen - aber die sinnvollen muss man erst finden - bzw evtl müßte man mehrere spalten in eine addieren oder sowas
-
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
welche spalten interessieren
Als Urheber dieser Bitte (Anforderung):
- Datum (Filter)
- BundeslandID (Filter)
- Bevölkerung
- Name
- Teilgeimpfte
- Vollimmunisierte
Ansich hätten mir die paar - aber aktuellen - Zahlen von https://orf.at/corona/daten/impfung interessiert, da wußte ich nch nicht was @Homoran findet. Leider sind in der csv keine aktuellen Zahlen.
Lieben Dank Euch Allen!
mxa -
@liv-in-sky Ja!
die interessanten Daten liegen eigentlich alle vorne.
Mit- Name [D]
- Einwohnerzahl [C]
- Teilgeimpfte [G]
- Vollimmunisierte [I]
kann man auch die Impfquoten errechnen
-
@metaxa sagte in Parser -> Bitte, Starthilfe benötigt!:
Leider sind in der csv keine aktuellen Zahlen.
doch!
die vom Vortaggaaaaanz unten
Da kommen genau deine markierten Werte
und @sigi234 hat kurze Zeit später die csv heruntergeladen und schon die Werte von gestern bekommen16:41:30.142 info javascript.0 (6191) script.js.Oesi_Impfen: Anzahl Erstimpfungen: 608045; Anzahl Zweitimpfungen: 252097;
-
@homoran said in Parser -> Bitte, Starthilfe benötigt!:
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
soll ich mal versuchen - in javascript ist das einfacher ?
gerne!
Das Ganze ist sowieso nur eine riesige Krücke.
Wenn das jemand sieht, der Ahnung davon hat wird der lachend vom Stuhl fallen.Wie bereits früher geschrieben nutze ich solche Aufgaben auch um mich selber weiterzubilden.
Das beginnt ja schon damit, dass ich keine zwei Zahlen aus der Website herausbekomme, sondern nur die im Hintergrund liegende Tabelle, die täglich länger wird.
Damals hatte mir bei einem ähnlichen fall @OliverIO geholfen (glaube ich zumindest) versteckte Daten zu finden.
Hab das Thema jetzt genutzt um es auch auf diese Weise zu versuchen.Der zweite Dilettantismus beginnt dann mit meiner Unfähigkeit diese csv-Datei in sinnvolle Fragmente zu zerlegen, auf die dann einfach zuzugreifen ist.
Statt dessen arbeite ich hier mit Stringsuchen, zählvariablen usw. und bekomme selbst das nicht so hin, wie ich es will, so dass ich empirisch an den Zählvariablen schraube damit das Ergebnis reproduzierbar (??) gleich bleibt- Es lohnt sich immer mal nachzuschauen, ob die Seiten solche Daten nicht selbst irgendwo laden. Das wird heute immer moderner, da dann die Server entlastet werden, da die Rechenarbeit alles in den Clients statt finden und man keine HTML-Seiten auf dem Server erzeugen muss. So werden einfach der HTML-Rahmen, Javascript und die Daten statisch ausgeliefert und der einzelne erzeugt dann sein Layout selbst.
- Der Regex-Parser funktioniert nur, wenn die Daten ohne größere Verschlüsselung oder Login (Basic-Authentication mal ausgenommen, obwohl das eigentlich heute nicht mehr funktionieren sollte) erreichbar ist.
Sobald eine mehrstufige Analyse der Daten notwendig ist, wird es schwierig.
Aus CSV-Daten ein bestimmtes Feld herauszusuchen, ist für mich 2 Stufig.
Zuerst die Zeile lesen, dann innerhalb einer Zeile das richtige Feld heraussuchen.allerdings würde ich mich bei CSV nicht mit RegEx herumschlagen, sondern einfach eine der zahlreichen Bibliotheken verwenden, die es wirklich extrem einfach macht, die zu handhaben.
ich selbst habe vor kurzem die folgende unter node verwendet:
https://www.npmjs.com/package/csv-parse
scheint auch im browser verwendbar zu sein, das hab ich selbst aber noch nicht ausprobiert, da brauch man wahrscheinlich noch requirejs dazu.
die bibliothek kann auch mit extrem großen csv dateien umgehen, die gar nicht mehr in den speicher passen, da diese im stream verarbeitet wird.
das einlesen einer CSV-Datei sieht dann bspw bei synchroner Anwendung wie folgt aus
const parse = require('csv-parse/lib/sync') const input = ` "key_1","key_2" "value 1","value 2" ` const records = parse(input, { columns: true, skip_empty_lines: true })
-
-
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
was fällt euch noch ein
die Quoten = %-Bevölkerung
-
-
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
das bundesland evtl weg und dafür der name an den anfang ? oder braucht ihr diese nummer ?
Als Option?
evtl die zahlen in tusend mit einer kommastelle ?
Ja
@liv-in-sky sagte in Parser -> Bitte, Starthilfe benötigt!:
was fällt euch noch ein
-
-
@liv-in-sky Das ist Spitze!
stell dich aber schon mal darauf ein, dass sich die Tabelle ändern wird, wenn noch Johnson&Johnson und noch weitere Hersteller kommenWie hast du jetzt die csv in Zeilen umgebrochen?
-
@homoran ist nicht so wild - sind nur 3 zeilenänderungen mehr pro impfstoff