public NicoNicoPublicMylistEntry GetMylist()
        {
            try {

                var a = NicoNicoWrapperMain.Session.GetAsync(MylistUrl).Result;

                //該当JavaScriptの部分から取得
                var globals = a.Substring(a.IndexOf("Jarty.globals("));

                //改行で分割
                var splitted = globals.Split('\n');

                //正規表現でダブルクォーテ内の名前を取得
                var regex = new Regex("\"(.*)\"");

                string nickname = null;
                string userid = null;
                string mylistname = null;
                string description = null;

                string json = null;

                foreach(var text in splitted) {

                    //マイリストオーナーだったら
                    if(text.Contains("mylist_owner:")) {

                        //マイリストオーナーのニックネームを取得
                        nickname = text.Substring(text.IndexOf("nickname: "));

                        var match = regex.Match(nickname);

                        //グループから取得
                        nickname = match.Groups[1].Value;
                        continue;
                    }

                    if(nickname != null && text.Contains("user_id:")) {

                        userid = new Regex(@"\d+").Match(text).Value;
                        continue;
                    }

                    if(userid != null && text.Contains("name:")) {

                        mylistname = regex.Match(text).Groups[1].Value;
                        continue;
                    }
                    if(mylistname != null && text.Contains("description:")) {

                        description = regex.Match(text).Groups[1].Value;
                        continue;
                    }
                    if(description != null && text.Contains("Mylist.preload(")) {

                        //Json取得
                        json = text.Substring(text.IndexOf(",") + 1, text.Length - text.IndexOf(",") - 3);
                        break;
                    }
                }

                var ret = new NicoNicoPublicMylistEntry();

                ret.NickName = @"<a href=""http://www.nicovideo.jp/user/" + userid + @""">" +  nickname + "</a> さんの公開マイリスト";
                ret.MylistName = mylistname;
                ret.Description = description;

                //\nを改行に置換
                ret.Description = ret.Description.Replace("\\n", "<br>").Replace("\\r", "");

                ret.Description = HyperLinkParser.Parse(ret.Description);

                var list = new List<MylistListEntryViewModel>();

                var data = DynamicJson.Parse(json);

                StoreItem(data, list);

                ret.Data = list;

                return ret;
            } catch(RequestTimeout) {

                return null;
            }
        }
        public NicoNicoPublicMylistEntry GetMylist()
        {
            try {
                var a = NicoNicoWrapperMain.Session.GetAsync(MylistUrl).Result;

                //該当JavaScriptの部分から取得
                var globals = a.Substring(a.IndexOf("Jarty.globals("));

                //改行で分割
                var splitted = globals.Split('\n');

                //正規表現でダブルクォーテ内の名前を取得
                var regex = new Regex("\"(.*)\"");

                string nickname    = null;
                string userid      = null;
                string mylistname  = null;
                string description = null;

                string json = null;

                foreach (var text in splitted)
                {
                    //マイリストオーナーだったら
                    if (text.Contains("mylist_owner:"))
                    {
                        //マイリストオーナーのニックネームを取得
                        nickname = text.Substring(text.IndexOf("nickname: "));

                        var match = regex.Match(nickname);

                        //グループから取得
                        nickname = match.Groups[1].Value;
                        continue;
                    }

                    if (nickname != null && text.Contains("user_id:"))
                    {
                        userid = new Regex(@"\d+").Match(text).Value;
                        continue;
                    }

                    if (userid != null && text.Contains("name:"))
                    {
                        mylistname = regex.Match(text).Groups[1].Value;
                        continue;
                    }
                    if (mylistname != null && text.Contains("description:"))
                    {
                        description = regex.Match(text).Groups[1].Value;
                        continue;
                    }
                    if (description != null && text.Contains("Mylist.preload("))
                    {
                        //Json取得
                        json = text.Substring(text.IndexOf(",") + 1, text.Length - text.IndexOf(",") - 3);
                        break;
                    }
                }

                var ret = new NicoNicoPublicMylistEntry();

                ret.NickName    = @"<a href=""http://www.nicovideo.jp/user/" + userid + @""">" + nickname + "</a> さんの公開マイリスト";
                ret.MylistName  = mylistname;
                ret.Description = description;

                //\nを改行に置換
                ret.Description = ret.Description.Replace("\\n", "<br>").Replace("\\r", "");

                ret.Description = HyperLinkParser.Parse(ret.Description);

                var list = new List <MylistListEntryViewModel>();

                var data = DynamicJson.Parse(json);

                StoreItem(data, list);

                ret.Data = list;

                return(ret);
            } catch (RequestTimeout) {
                return(null);
            }
        }