//ユーザー定義の二コレポリストを取得 private List <NicoNicoNicoRepoListEntry> GetUserDefinitionNicoRepoList() { try { //htmlからCSRFトークンを抜き出す var html = NicoNicoWrapperMain.Session.GetAsync(NicoRepoWebUrl).Result; //CSRFトークン var token = html.Substring(html.IndexOf("Mypage_globals.hash = \"") + 23, 60); var response = NicoNicoWrapperMain.Session.GetAsync(NicoRepoListApiUrl + token).Result; Console.WriteLine(NicoRepoListApiUrl + token); var json = DynamicJson.Parse(response); var ret = new List <NicoNicoNicoRepoListEntry>(); foreach (var entry in json.nicorepolists) { var list = new NicoNicoNicoRepoListEntry(entry.title, entry.id); ret.Add(list); } return(ret); } catch (Exception) { return(new List <NicoNicoNicoRepoListEntry>()); } }
//ユーザー定義の二コレポリストを取得 private List<NicoNicoNicoRepoListEntry> GetUserDefinitionNicoRepoList() { try { //htmlからCSRFトークンを抜き出す var html = NicoNicoWrapperMain.Session.GetAsync(NicoRepoWebUrl).Result; //CSRFトークン var token = html.Substring(html.IndexOf("Mypage_globals.hash = \"") + 23, 60); var response = NicoNicoWrapperMain.Session.GetAsync(NicoRepoListApiUrl + token).Result; Console.WriteLine(NicoRepoListApiUrl + token); var json = DynamicJson.Parse(response); var ret = new List<NicoNicoNicoRepoListEntry>(); foreach(var entry in json.nicorepolists) { var list = new NicoNicoNicoRepoListEntry(entry.title, entry.id); ret.Add(list); } return ret; } catch(Exception) { return new List<NicoNicoNicoRepoListEntry>(); } }
//すべてのニコレポリストを取得 public List<NicoNicoNicoRepoListEntry> GetNicoRepoList() { List<NicoNicoNicoRepoListEntry> ret = new List<NicoNicoNicoRepoListEntry>(); NicoNicoNicoRepoListEntry all = new NicoNicoNicoRepoListEntry("すべて", "all"); NicoNicoNicoRepoListEntry myself = new NicoNicoNicoRepoListEntry("自分", "myself"); NicoNicoNicoRepoListEntry user = new NicoNicoNicoRepoListEntry("お気に入りユーザー", "user"); NicoNicoNicoRepoListEntry chcom = new NicoNicoNicoRepoListEntry("チャンネル&コミュニティ", "chcom"); NicoNicoNicoRepoListEntry mylist = new NicoNicoNicoRepoListEntry("マイリスト", "mylist"); ret.Add(all); ret.Add(myself); ret.Add(user); ret.Add(chcom); ret.Add(mylist); ret = new List<NicoNicoNicoRepoListEntry>(ret.Concat(GetUserDefinitionNicoRepoList())); return ret; }
//すべてのニコレポリストを取得 public List <NicoNicoNicoRepoListEntry> GetNicoRepoList() { var ret = new List <NicoNicoNicoRepoListEntry>(); var all = new NicoNicoNicoRepoListEntry("すべて", "all"); var myself = new NicoNicoNicoRepoListEntry("自分", "myself"); var user = new NicoNicoNicoRepoListEntry("お気に入りユーザー", "user"); var chcom = new NicoNicoNicoRepoListEntry("チャンネル&コミュニティ", "chcom"); var mylist = new NicoNicoNicoRepoListEntry("マイリスト", "mylist"); ret.Add(all); ret.Add(myself); ret.Add(user); ret.Add(chcom); ret.Add(mylist); ret = new List <NicoNicoNicoRepoListEntry>(ret.Concat(GetUserDefinitionNicoRepoList())); return(ret); }