Veröffentlicht 6. September 20169 j Hallo meine lieben Fachinformatiker, mit diesem Thread greife ich mal folgenden Post auf: Ich habe mir kurz ein Programm geschrieben, welches mir die geposteten Gehälter auflistet, nach einwenig manuellen rum formatieren der erhaltenen Ausgabe ging es dann weiter durch das Programm zur genauen Auswertung. Anschließend die Ergebnisse in ein Diagramm gepackt, und Voilá! Hier ist eine Grafische Darstellung der Beiträge aus: In welchem Alter habt Ihr eure Ausbildung angefangen? Die Durchschnittliche Vergütungserhöhung pro Jahr: Die Aufteilung der verschiedenen Gehälter: Falls jemand an dem Source vom Programm (Um die Rawdata zu holen) interessiert ist: private readonly String AZUBITHREAD = "https://www.fachinformatiker.de/index.php?/topic/150679-in-welchem-alter-habt-ihr-eure-ausbildung-angefangen/"; private readonly String DYNAMICTHREAD = "https://www.fachinformatiker.de/index.php?/topic/150679-in-welchem-alter-habt-ihr-eure-ausbildung-angefangen/&page={0}"; private readonly String[] SPECIALSTUFF = new String[] { "<p>", "</p>", "Ausbildungsgehalt (1/2/3 Lehrjahr):" , " "}; private String GetStringBetweenStrings(String source, String s1, String s2) { String output = ""; String part1 = source.Split(new string[] { s1 }, StringSplitOptions.RemoveEmptyEntries)[1]; output = part1.Split(new string[] { s2 }, StringSplitOptions.RemoveEmptyEntries)[0]; return output; } private bool IsGehalt(String s) { if (!s.Contains(":")) { return false; } int charIndex = s.IndexOf(':'); try { return IsNumeric(s.ElementAt(charIndex + 2).ToString()); }catch { return false; } } private String RemoveSpecialStuff(String s) { String output = s; foreach (String val in SPECIALSTUFF) { output = output.Replace(val, ""); } return output.TrimStart().TrimEnd(); } private bool IsNumeric(String s) { int v; return int.TryParse(s, out v); } private String FetchData() { WebClient client = new WebClient() { Proxy = null }; String firstPull = client.DownloadString(AZUBITHREAD); StringBuilder strBuild = new StringBuilder(""); int maxPages = int.Parse(GetStringBetweenStrings(firstPull, "Seite 1 von ", " ")); RichTextBox tmpBox = new RichTextBox(); for (int page = 1; page <= maxPages; page++) { tmpBox.Text = client.DownloadString(String.Format(DYNAMICTHREAD, page)); foreach (String line in tmpBox.Lines) { if (line.Contains("Ausbildungsgehalt") && IsGehalt(line)) { strBuild.AppendLine(RemoveSpecialStuff(line)); } } } return strBuild.ToString(); } Bearbeitet 6. September 20169 j von GlumiChan
6. September 20169 j Autor Hier noch die PowerPoint-Datei, die die Diagramme beinhaltet. Gehälter.pptx Bearbeitet 6. September 20169 j von GlumiChan
6. September 20169 j Hallo GlumiChan, Find ich gut, jetzt muss das noch aktualisiert werden. Nach jedem neuen Eintrag bzw. zB. einmal jährlich. Vielleicht sogar im Board implementiert. Grüße Micha
7. September 20169 j Autor Falls Interesse an der Erhaltung dieser Auswertung besteht kann ich ja ne kleine Website schreiben, wo man die ganzen Auswertungen live sehen kann & unten dann jeder seine Gehälter einfügen kann, die dann direkt in die Statistik mit einfließen können. (Natürlich mit einpaar Vorkehrungen um Trolls fernzuhalten) MFG GlumiChan Bearbeitet 7. September 20169 j von GlumiChan
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.