// See https://aka.ms/new-console-template for more information using System.Diagnostics; using System.Text.RegularExpressions; public static class Helper { public enum Porto { FAILED, BRIEF085, BRIEF100, BRIEF160, BRIEF275, PRIO210, PRIO270 } internal static Kunde ConvertToKunde(string text) { string[] datas = text.Split("\r\n"); string name = datas[0]; string adresseUNDHausnummer = datas[datas.Length-3]; string plzUNDOrt = datas[datas.Length-2]; string land = datas[datas.Length-1]; datas = plzUNDOrt.Split(" "); string plz = datas[0]; string ort = datas[1]; datas = adresseUNDHausnummer.Split(" "); string strasse = ""; string hausnummer = ""; Trace.WriteLine(datas.Length); if (datas.Length <= 1) { Regex myRegex = new Regex("[0-9]*$"); var matched = myRegex.Match(adresseUNDHausnummer); strasse = adresseUNDHausnummer.Substring(0, matched.Index); hausnummer = adresseUNDHausnummer.Substring(matched.Index); } else { for (int i = 0; i < datas.Length - 1; i++) { strasse += datas[i] + " "; } strasse = strasse.Trim(); hausnummer = datas[datas.Length - 1]; } return new Kunde(name, strasse, hausnummer, plz, ort, land); } public static List ParseArtikeln(string text) { List result = new List(); string[] datas = text.Split("\r\n"); for(int i = 0; i < datas.Length; i++) { Artikel temp = new Artikel(); int internalCounter = 0; bool SourceFounded = false; for(int j = i; j < datas.Length; j++) { Trace.WriteLine(internalCounter); var nFound = datas[j].IndexOf("€"); if(nFound == -1) { var xFound = datas[j].IndexOf("x"); if(xFound >= 1 && xFound <= 2) { temp.Amount = Convert.ToInt32(datas[j].Substring(0, xFound)); temp.GERName = datas[j].Substring(xFound + 1).Trim(); } if(internalCounter == 1) { temp.ENGName = datas[j]; } if(internalCounter == 2) { var d = datas[j].IndexOf("#"); if (datas[j].IndexOf("#") > -1) { temp.CardNumber = datas[j]; SourceFounded = false; } else { temp.Source = datas[j]; SourceFounded = true; } } if(internalCounter == 3) { if(SourceFounded) { temp.Raritaet = datas[j]; } else { temp.Source = datas[j]; } } Trace.WriteLine(j + " " + datas[j]); } else { temp.Preis = datas[j].Split(' ')[0]; result.Add(temp); i = j; break; } internalCounter++; } } return result; } internal static DateTime ConvertBezahlDatum(string text) { //21.06.202308:39 int uhrzeitsignature = text.IndexOf(':'); string datum = text.Substring(0, uhrzeitsignature - 2); string uhrzeit = text.Substring(uhrzeitsignature-2,text.Length - uhrzeitsignature + 2); return DateTime.Parse(string.Format("{0} {1}", datum, uhrzeit)); } } /* HttpWebRequest hwr = (HttpWebRequest)HttpWebRequest.Create(@"https://www.cardmarket.com/de/OnePiece/Orders/Sales/Paid"); hwr.CookieContainer = cookieContainer; hwr.Method = "GET"; hwr.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"; WebResponse wr = hwr.GetResponse(); string s = new StreamReader(wr.GetResponseStream()).ReadToEnd(); Console.WriteLine(s); string GetHashKey(string line) { var x = line.IndexOf("__cmtkn"); var d = line.Substring(x + 16); var m = d.IndexOf("\""); var a = d.Substring(0, m); return a; } */