خواندن توییت ها از توییتر با استفاده از LinqToTwitter

LinqToTwitter

این مقاله نشان می دهد که چگونه اطلاعات را با استفاده از LinqToTwitter از توییتر بیاورید. مقاله ای بسیار کاربردی و جالبیست که در محیط سی شارپ آموزش داده شده است میتوانید توسط این آموزش اطلاعات و توییت های که در اکانت Twitter دارید در یک پروژه سی شارپی بخوانید.

پیش نیاز های اضافه کردن LinqToTwitter:

  1. VS2013
  2. C#
  3. LinqToTwitter

در ابتدا نیاز داریم که یک App در توییتر ریجستر کنیم، در ادامه مراحل آن را توضیح داده ایم:
قدم اول: وارد توییتر شوید و به آدرس https://dev.twitter.com/ و به قسمت پایین بروید زیر قسمت ابزار ها، روی   Manage your apps کلیک کنید. شما می توانید در داشبورد لیست App  که قبل ایجاد شده اند، ببینید.

LinqToTwitter

قدم دوم: روی Create New App کلیک کنید،  صفحه زیر را مشاهده خواهید کرد. اکنون، جاهای خالی را پر کنید:

LinqToTwitter

قدم سوم: به قسمت کلید ها (keys) بروید و به تب های نشان شده را کامل کنید، در آن Consumer key  و Consumer Secret را خواهیم داشت و به Access token و Access TokenSecret نیاز داریم. برای دست یابی به کلید دسترسی، روی دکمه Generate Access Token  کلیک کنید. حالا Access token و Acess Token Secret قابل رویت خواهند شد. ما به این ۴ کلید برای آوردن اطلاعات از توییتر نیاز داریم.

قدم چهارم: حالا VS 2013 را باز کنید و یک اپلیکیشن کنسول (c#) بسازید و LinqToTwitter library را از nugget اضافه کنید.

 

قدم پنجم: یک method همانند کد زیر بسازید:

private static void Main(string[] args)  

{  

Console.WriteLine("working on it....");  

var tweetList = GetTwitterFeeds();  

Console.WriteLine("Tweets Count "+tweetList.Count);  

var file = new System.IO.StreamWriter("D:\\TweetsList.txt",true); // Make sure to change the path according to your system  

foreach (var item in tweetList)  

{  

file.WriteLine(item.CreatedAt);  

}  

file.Close();  

Console.WriteLine("Done! check your drive file has been created");  

Console.ReadLine();  

}
public static List<Status> GetTwitterFeeds()  
{  
    string screenname = "csharpcorner";  
  
    var auth = new SingleUserAuthorizer  
    {  
  
        CredentialStore = new InMemoryCredentialStore()  
        {  
  
            ConsumerKey = ConfigurationManager.AppSettings["consumerkey"],  
            ConsumerSecret = ConfigurationManager.AppSettings["consumersecret"],  
            OAuthToken = ConfigurationManager.AppSettings["accessToken"],  
            OAuthTokenSecret = ConfigurationManager.AppSettings["accessTokenSecret"]  
  
        }  
  
    };  
    var twitterCtx = new TwitterContext(auth);  
    var ownTweets = new List<Status>();  
  
    ulong maxId = 0;  
    bool flag = true;  
    var statusResponse = new List<Status>();  
    statusResponse = (from tweet in twitterCtx.Status  
    where tweet.Type == StatusType.User  
    && tweet.ScreenName == screenname  
    && tweet.Count == 200  
    select tweet).ToList();  
  
    if (statusResponse.Count > 0)  
    {  
        maxId = ulong.Parse(statusResponse.Last().StatusID.ToString()) - 1;  
        ownTweets.AddRange(statusResponse);  
  
    }  
    do  
    {  
        int rateLimitStatus = twitterCtx.RateLimitRemaining;  
        if (rateLimitStatus != 0)  
        {  
  
            statusResponse = (from tweet in twitterCtx.Status  
            where tweet.Type == StatusType.User  
            && tweet.ScreenName == screenname  
            && tweet.MaxID == maxId  
            && tweet.Count == 200  
            select tweet).ToList();  
    
            if (statusResponse.Count != 0)  
            {  
                maxId = ulong.Parse(statusResponse.Last().StatusID.ToString()) - 1;  
                ownTweets.AddRange(statusResponse);  
            }  
            else  
            {  
                flag = false;  
            }  
        }  
        else  
        {  
            flag = false;  
        }  
        } while (flag);  
  
                return ownTweets;  
    }  
  
}   

توضیحات: LINQ به توییتر برای عبور از پردازش اختیارات توییتر ساخته شده، اگر شما نیز کلید های ثبت نام شده را داشته باشید فقط در هر ۱۵ دقیقه میتوانید ۱۸۰ درخواست ثبت کنید

API توییتر در هر ۱۵ دقیقه به ۱۸۰ در خواست اجازه می دهد که ارسال شود و دسترسی پیدا کند.

موفق باشید.

  • پسورد: www.mspsoft.com
محمد نجفی

نوشته‌های مرتبط

دیدگاه‌ها

*
*

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.