public void GetTwitterWebMentions(string HostName) { try { HostName = HostName.Replace("www.", ""); JArray output = new JArray(); SortedDictionary<string, string> requestParameters = new SortedDictionary<string, string>(); try { var oauth_url = " https://api.twitter.com/1.1/search/tweets.json?q=" + HostName.Trim() + "&result_type=recent&count=30"; var headerFormat = "Bearer {0}"; var authHeader = string.Format(headerFormat, "AAAAAAAAAAAAAAAAAAAAAOZyVwAAAAAAgI0VcykgJ600le2YdR4uhKgjaMs%3D0MYOt4LpwCTAIi46HYWa85ZcJ81qi0D9sh8avr1Zwf7BDzgdHT"); var postBody = requestParameters.ToWebString(); ServicePointManager.Expect100Continue = false; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(oauth_url + "?" + requestParameters.ToWebString()); request.Headers.Add("Authorization", authHeader); request.Method = "GET"; request.Headers.Add("Accept-Encoding", "gzip"); HttpWebResponse response = request.GetResponse() as HttpWebResponse; Stream responseStream = new GZipStream(response.GetResponseStream(), CompressionMode.Decompress); using (var reader = new StreamReader(responseStream)) { var objText = reader.ReadToEnd(); output = JArray.Parse(JObject.Parse(objText)["statuses"].ToString()); } } catch (Exception ex) { } Domain.Socioboard.MongoDomain.TwitterUrlMentions _TwitterUrlMentions; try { foreach (var chile in output) { try { _TwitterUrlMentions = new Domain.Socioboard.MongoDomain.TwitterUrlMentions(); _TwitterUrlMentions.Id = ObjectId.GenerateNewId(); _TwitterUrlMentions.Feed = chile["text"].ToString(); _TwitterUrlMentions.Feeddate = Utility.ParseTwitterTime(chile["created_at"].ToString()).ToUnixTimestamp(); _TwitterUrlMentions.FeedId = chile["id_str"].ToString(); _TwitterUrlMentions.FromId = chile["user"]["id_str"].ToString(); _TwitterUrlMentions.FromImageUrl = chile["user"]["profile_image_url"].ToString(); _TwitterUrlMentions.FromName = chile["user"]["screen_name"].ToString(); _TwitterUrlMentions.HostName = HostName; var ret = TwtsearchRepo.Find<Domain.Socioboard.MongoDomain.TwitterUrlMentions>(t => t.FeedId.Equals(_TwitterUrlMentions.FeedId) && t.HostName.Equals(_TwitterUrlMentions.HostName)); var task = Task.Run(async () => { return await ret; }); int count = task.Result.Count; if (count < 1) { TwtsearchRepo.Add(_TwitterUrlMentions); } } catch { } } } catch { } } catch { } }
public void GetTwitterWebMentions(string HostName) { try { HostName = HostName.Replace("www.", ""); JArray output = new JArray(); SortedDictionary <string, string> requestParameters = new SortedDictionary <string, string>(); try { var oauth_url = " https://api.twitter.com/1.1/search/tweets.json?q=" + HostName.Trim() + "&result_type=recent&count=30"; var headerFormat = "Bearer {0}"; var authHeader = string.Format(headerFormat, "AAAAAAAAAAAAAAAAAAAAAOZyVwAAAAAAgI0VcykgJ600le2YdR4uhKgjaMs%3D0MYOt4LpwCTAIi46HYWa85ZcJ81qi0D9sh8avr1Zwf7BDzgdHT"); var postBody = requestParameters.ToWebString(); ServicePointManager.Expect100Continue = false; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(oauth_url + "?" + requestParameters.ToWebString()); request.Headers.Add("Authorization", authHeader); request.Method = "GET"; request.Headers.Add("Accept-Encoding", "gzip"); HttpWebResponse response = request.GetResponse() as HttpWebResponse; Stream responseStream = new GZipStream(response.GetResponseStream(), CompressionMode.Decompress); using (var reader = new StreamReader(responseStream)) { var objText = reader.ReadToEnd(); output = JArray.Parse(JObject.Parse(objText)["statuses"].ToString()); } } catch (Exception ex) { } Domain.Socioboard.MongoDomain.TwitterUrlMentions _TwitterUrlMentions; try { foreach (var chile in output) { try { _TwitterUrlMentions = new Domain.Socioboard.MongoDomain.TwitterUrlMentions(); _TwitterUrlMentions.Id = ObjectId.GenerateNewId(); _TwitterUrlMentions.Feed = chile["text"].ToString(); _TwitterUrlMentions.Feeddate = Utility.ParseTwitterTime(chile["created_at"].ToString()).ToUnixTimestamp(); _TwitterUrlMentions.FeedId = chile["id_str"].ToString(); _TwitterUrlMentions.FromId = chile["user"]["id_str"].ToString(); _TwitterUrlMentions.FromImageUrl = chile["user"]["profile_image_url"].ToString(); _TwitterUrlMentions.FromName = chile["user"]["screen_name"].ToString(); _TwitterUrlMentions.HostName = HostName; var ret = TwtsearchRepo.Find <Domain.Socioboard.MongoDomain.TwitterUrlMentions>(t => t.FeedId.Equals(_TwitterUrlMentions.FeedId) && t.HostName.Equals(_TwitterUrlMentions.HostName)); var task = Task.Run(async() => { return(await ret); }); int count = task.Result.Count; if (count < 1) { TwtsearchRepo.Add(_TwitterUrlMentions); } } catch { } } } catch { } } catch { } }