Merhaba arkadaşlar bugunkü yazımda sizlere twitterda kişi ve içerik arama yapacağım Kodlar ekte vardır

using HtmlAgilityPack;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Net;
using System.Text;
using System.Windows.Forms;
namespace twitter_makalesi
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
         public string getContent(string AdressUrl)
        {
            Uri url = new Uri(AdressUrl);
            WebClient client = new WebClient();
            client.Encoding = System.Text.Encoding.UTF8;
            string html = client.DownloadString(url);
            return html;
        }
        private List<Profil> Profil_List(string arama)
        {
            HtmlAgilityPack.HtmlWeb htmlweb = new HtmlAgilityPack.HtmlWeb();
            string url = “https://twitter.com/search?q=from%3A” + arama + “&src=typd&vertical=default&f=users”;
            url = url.Replace(“ğ”, “g”).Replace(“ı”, “i”).Replace(“ö”, “o”).Replace(“ç”, “c”);
            url = url.Replace(“Ğ”, “G”).Replace(“İ”, “I”).Replace(“Ö”, “O”).Replace(“Ç”, “C”);
            string htmlContext = getContent(url);
            HtmlAgilityPack.HtmlDocument document = new HtmlAgilityPack.HtmlDocument();
            document.LoadHtml(htmlContext);
            List<Profil> dovizList = new List<Profil>();
            HtmlNodeCollection element = document.DocumentNode.SelectNodes(“//a[contains(@class,’ProfileNameTruncated-link’)]”);
            Profil profil;
            foreach (HtmlNode item in element)
            {
               profil = new Profil();
               var href = item.GetAttributeValue(“href”, null);
               var title = item.InnerText;
                if(href!=null&&title!=null)
                {
                    profil.adi = title;
                    profil.link = href;
                }              
                dovizList.Add(profil);
            }
            return dovizList;
        }
        private List<Profil> Profil_Tweets(string arama)
        {
            string url = “https://twitter.com/search?q=”+arama+”&src=typd&vertical=default&f=tweets”;
             HtmlAgilityPack.HtmlWeb htmlweb = new HtmlAgilityPack.HtmlWeb();
           url = url.Replace(“ğ”, “g”).Replace(“ı”, “i”).Replace(“ö”, “o”).Replace(“ç”, “c”);
            url = url.Replace(“Ğ”, “G”).Replace(“İ”, “I”).Replace(“Ö”, “O”).Replace(“Ç”, “C”);
            string htmlContext = getContent(url);
            HtmlAgilityPack.HtmlDocument document = new HtmlAgilityPack.HtmlDocument();
            document.LoadHtml(htmlContext);
            List<Profil> dovizList = new List<Profil>();
            HtmlNodeCollection element = document.DocumentNode.SelectNodes(“//p[contains(@class,’TweetTextSize’)]”);
            Profil profil;
            foreach (HtmlNode item in element)
            {
               profil = new Profil();
               
               var title = item.InnerText;
                if(title!=null)
                {
                    profil.tweet = title;
                }              
                dovizList.Add(profil);
            }
            return dovizList;
        }
        private List<Profil> get_twitter_kisi_List(string arama)
        {
            List<Profil> lst_profil = Profil_Tweets(arama);
            string url = “https://twitter.com/search?q=” + arama + “&src=typd&vertical=default&f=tweets”;
            HtmlAgilityPack.HtmlWeb htmlweb = new HtmlAgilityPack.HtmlWeb();
            url = url.Replace(“ğ”, “g”).Replace(“ı”, “i”).Replace(“ö”, “o”).Replace(“ç”, “c”);
            url = url.Replace(“Ğ”, “G”).Replace(“İ”, “I”).Replace(“Ö”, “O”).Replace(“Ç”, “C”);
            string htmlContext = getContent(url);
            HtmlAgilityPack.HtmlDocument document = new HtmlAgilityPack.HtmlDocument();
            document.LoadHtml(htmlContext);
            int sayac = 0;
            HtmlNodeCollection element = document.DocumentNode.SelectNodes(“//a[contains(@class,’account-group’)]”);
            foreach (HtmlNode item in element)
            {
               var href = item.GetAttributeValue(“href”, null);
               var title = item.InnerText;
               if (href != null && title != null)
               {
                   lst_profil[sayac].adi = title.Replace(”  “,””).Replace(“/n”,””);
                   lst_profil[sayac].link = href;
               }
                sayac = sayac + 1;
            }
            return lst_profil;
     }
        private void btn_ara_Click(object sender, EventArgs e)
        {
            lst_sonuc.Items.Clear();
            if (txt_kisi_ara.Text!=””)
            {
                List<Profil> profil_list = Profil_List(txt_kisi_ara.Text);
                foreach (var item in profil_list)
                {
                    lst_sonuc.Items.Add(item.link + “;” + item.adi);
                }
            }
            else if (txt_icerik_ara.Text != “”)
            {
                List<Profil> profil_list = get_twitter_kisi_List(txt_icerik_ara.Text);
                foreach (var item in profil_list)
                {
                    lst_sonuc.Items.Add(item.link + “;” + item.adi+”;”+item.tweet);
                }
            }
            else
            {
                MessageBox.Show(“content is not filling”);
            }
        }
    }
}
Ramazan Cesur