public IEnumerable <DownloadMusicItem> Scrape(string query) { const int max_records = 100; SearchManager search_manager = new SearchManager(cookieContainer, session.Session); for (int i = 0; i < 16; i++) { var search_task = search_manager.Search( SearchBuilder.Build( SearchType.Video, query, NicoNicoTarget.Keyword, NicoNicoSort.StartTime, false) .Offset(i * max_records) .Limit(max_records) .Range(NicoNicoFilter.StartTime, NicoNicoFilterOperator.Gte, this.lastDateTime) ); var videoToAudioConveter = new VideoToAudioConveter(); videoToAudioConveter.TitleConverter = TitileConverterInfo.Build("format.txt", "bands.txt", "ignore.txt"); var search_result = search_task.Result; foreach (var search in search_result.Data) { Logger.Current.WriteLine(string.Format("getting titile from {0}", search.ContentId)); Logger.Current.WriteLine(string.Format("title:{0} description:{1}", search.Title, search.Description)); string title = videoToAudioConveter.GetMusicTitle(search.Title, search.Description); yield return(new DownloadMusicItem(search.ContentId, title)); } } using (StreamWriter sw = new StreamWriter(config_file_name)) { sw.WriteLine(DateTime.Now.ToString(date_format)); } }
static async Task Main(string[] args) { var q = "dublin"; var d = new Daft(); var sb = new SearchBuilder() .WithAdState(new[] { AdState.Available }) .WithKeyword("dublin"); var rslt = await d.Search(sb.Build()); if (rslt != null) { //do something with rslt } }
private static Entity Search(string url) { var query = SearchUrlPattern.Match(HttpUtility.UrlDecode(url)).Groups[1].Value; var searchBuilder = new SearchBuilder().WithQuery(query); var nameValueCollection = HttpUtility.ParseQueryString(new Uri(RedditBaseAddress, url).Query); IEnumerable <Thing> things; if (nameValueCollection.AllKeys.Contains("type")) { var type = nameValueCollection["type"]; var count = nameValueCollection.AllKeys.Contains("count") ? int.Parse(nameValueCollection["count"]) : 0; searchBuilder.WithCount(count); if (type == "subreddit") { things = new Reddit().SearchSubreddits(query).Skip(count).Take(25); searchBuilder.OnlySubreddit(); } else { things = new Reddit().Search <Thing>(query).Skip(count).Take(25); searchBuilder.OnlyPost(); } } else { things = new Reddit().SearchSubreddits(query).Take(3).Concat(new Reddit().Search <Thing>(query).Take(22)); } return(searchBuilder.Build(things)); }
static async Task MainAsync(string[] args) { Console.WriteLine("Enter Email: "); var email = Console.ReadLine(); Console.WriteLine("Enter Password: "******""; ConsoleKeyInfo key; do { key = Console.ReadKey(true); if (key.Key != ConsoleKey.Backspace && key.Key != ConsoleKey.Enter) { pass += key.KeyChar; Console.Write("*"); } else { if (key.Key != ConsoleKey.Backspace || pass.Length <= 0) { continue; } pass = pass.Substring(0, (pass.Length - 1)); Console.Write("\b \b"); } }while (key.Key != ConsoleKey.Enter); var authManager = new AuthenticationManager(); var userLoginSession = await authManager.LoginUserThroughV1ApiAsync(email, pass); var cookieContainer = authManager.CreateLoginCookieContainer(userLoginSession); // Reset the authentication manager with the proper cookie container. authManager = new AuthenticationManager(cookieContainer); var session = await authManager.StartUserSessionAsync(); // In order to test "extending" the users session, we need to reset the authManager again, // this time with the session key. authManager = new AuthenticationManager(cookieContainer, session.Session); var test = await authManager.ExtendUserSessionAsync(); //var genreManager = new GenreManager(cookieContainer, session.Session); //var test3 = await genreManager.GetGenreListAsync(); //var test4 = await genreManager.GetGenreGroupsAsync(); var searchManager = new SearchManager(cookieContainer, session.Session); //var test13 = await searchManager.GetSuggestions("実況"); var test14 = await searchManager.Search(SearchBuilder.Build(SearchType.Video, "東方ヴォーカル", NicoNicoTarget.Keyword, NicoNicoSort.StartTime, true).Offset(0).Limit(10)); //var liveVideoManager = new LiveVideoManager(cookieContainer, session.Session); //var test10 = await liveVideoManager.GetComingSoonListAsync(); //var test11 = await liveVideoManager.GetOnAirListAsync(); //var videoManager = new VideoManager(cookieContainer, session.Session); //var test5 = await videoManager.GetDefListAsync(0, 10); //var test2 = await videoManager.GetVideoInfoAsync(new string[] { "sm26238346", "sm9" }); //var test8 = await videoManager.GetVideoFlvAsync("sm28943856"); //var test6 = await videoManager.GetVideoInfoAsync("sm26238346"); //var thumbManager = new ThumbManager(cookieContainer, session.Session); //var test7 = await thumbManager.GetThumbInfoAsync("sm26156154"); //var download_container = new System.Net.CookieContainer(); //download_container.Add(new System.Net.Cookie("user_session", userLoginSession.SessionKey, "/", "nicovideo.jp")); //download_container.Add(new System.Net.Cookie("nicohistory", nicohistory, "/", "nicovideo.jp")); var userManager = new UserManager(cookieContainer, session.Session); var user = await userManager.GetCurrentUserInfoAsync(); await userManager.GetCurrentUserPremiumInfoAsync(user.User); Console.WriteLine(""); Console.WriteLine("Nickname: " + user.User.Nickname); Console.WriteLine("Country: " + user.User.Country); Console.WriteLine("Prefecture: " + user.User.Prefecture); Console.WriteLine("Sex: " + user.User.Sex); Console.WriteLine("Thumbnail: " + user.User.ThumbnailUrl); Console.WriteLine("Push any key to exit"); Console.ReadKey(); }