コード例 #1
0
ファイル: AppMain.cs プロジェクト: san-had/OMSZ
        private Meres ParseRawData(RawMeres rawMeres)
        {
            var szeliranyok = new List <string>
            {
                "északi",
                "északkeleti",
                "keleti",
                "délkeleti",
                "déli",
                "délnyugati",
                "nyugati",
                "északnyugati",
                "szélcsend"
            };

            var szeliranyok2 = new List <string>
            {
                "É",
                "ÉK",
                "K",
                "DK",
                "D",
                "DNY",
                "NY",
                "ÉNY",
                "-"
            };

            var meres = new Meres();

            meres.Datum = rawMeres.Datum;
            try
            {
                meres.Homerseklet = Convert.ToInt32(rawMeres.Homerseklet);
                meres.Legnyomas   = Convert.ToInt32(rawMeres.Legnyomas);
                int szelindex = szeliranyok.IndexOf(rawMeres.Szelirany.Trim());
                meres.Szelirany    = szelindex > -1 ? szeliranyok2[szelindex] : " - ";
                meres.Szelsebesseg = Convert.ToInt32(rawMeres.Szelsebesseg);
                meres.Csapadek     = Convert.ToDouble(rawMeres.Csapadek);
            }
            catch
            {
            }

            return(meres);
        }
コード例 #2
0
ファイル: AppMain.cs プロジェクト: san-had/OMSZ
        private List <RawMeres> ParseHtmlData(string html)
        {
            List <RawMeres> MeresList = new List <RawMeres>();

            HtmlDocument       mDocument = PreProcessHtml(html);
            HtmlNodeCollection tdcoll    = mDocument.Nodes.FindByAttributeNameValue("class", "rbg0", true);

            List <DateTime> dateList = GetDateTimeList(mDocument);

            const int ROW_DATA_LENGTH = 9;

            int index    = 0;
            int rowIndex = 0;

            string   homerseklet  = String.Empty;
            string   legnyomas    = String.Empty;
            string   szelirany    = String.Empty;
            string   szelsebesseg = String.Empty;
            string   csapadek     = String.Empty;
            DateTime datum        = DateTime.Now;

            foreach (MIL.Html.HtmlElement td in tdcoll)    //td értékek
            {
                if (index % ROW_DATA_LENGTH == 0)
                {
                    // in UTC
                    datum = dateList[rowIndex];
                    rowIndex++;
                }
                if (index % ROW_DATA_LENGTH == 1)
                {
                    homerseklet = ((MIL.Html.HtmlElement)td.FirstChild).Text;
                }
                if (index % ROW_DATA_LENGTH == 3)
                {
                    string   htmlText   = td.Attributes.FindByName("onmouseover").Value;
                    string[] splitchars = { "<br>" };
                    string[] tmp        = htmlText.Split(splitchars, StringSplitOptions.None);
                    szelirany = tmp[1];
                }

                if (index % ROW_DATA_LENGTH == 4)
                {
                    szelsebesseg = ((MIL.Html.HtmlElement)td.FirstChild).Text;
                }

                if (index % ROW_DATA_LENGTH == 6)
                {
                    legnyomas = ((MIL.Html.HtmlElement)td.FirstChild).Text;
                }

                if (index % ROW_DATA_LENGTH == 8)
                {
                    csapadek = ((MIL.Html.HtmlElement)td.FirstChild).Text;
                    csapadek = csapadek.Replace('.', ',');
                    csapadek = csapadek.Replace("-", "0,0");
                }

                if (index % ROW_DATA_LENGTH == 8)
                {
                    var rawMeres = new RawMeres();
                    rawMeres.Datum = datum;
                    try
                    {
                        rawMeres.Homerseklet  = homerseklet;
                        rawMeres.Legnyomas    = legnyomas;
                        rawMeres.Szelirany    = szelirany;
                        rawMeres.Szelsebesseg = szelsebesseg;
                        rawMeres.Csapadek     = csapadek;
                        MeresList.Add(rawMeres);
                    }
                    catch
                    {
                        continue;
                    }
                }
                index++;
            }
            return(MeresList);
        }