Merhaba arkadaşlar
bugün sizlerle c# üzerinden HtmlAgilityPack'in genel kullanımını öğreneceğiz ve bir ufak örnek yapacağız.
HtmlAgilityPack:
çeşitli sitelerden anlık olarak veri çekmemizi sağlar.
Selenium kullanarak yapabileceğiniz çoğu şeyi performans açısından daha iyi bir biçimde HtmlAgilityPack kullanarak yapabilirsiniz.
KULLANIM:
Öncelikle form projesini açalım ve;
şeklinde HtmlAgilityPack'i indirip, kodlarımızı yazmaya başlayabiliriz.
FORM TASARIMI
1 BUTTON
4 TEXTBOX
4 LABEL
2 GROUPBOX
KODLAR:
C#:
private void button1_Click(object sender, EventArgs e)
{
WebClient client = new WebClient();
//dolar çektirme
string site1 = client.DownloadString("https://bigpara.hurriyet.com.tr/doviz/dolar/");
//Veri çekeceğim siteyi ekliyorum
HtmlAgilityPack.HtmlDocument dolaralısdeger = new HtmlAgilityPack.HtmlDocument(); dolaralısdeger.LoadHtml(site1);
string dolaral = dolaralısdeger.DocumentNode.SelectNodes("//*[@id=\"content\"]/div[2]/div/div[2]/div[2]/span[2]")[0].InnerText;
// adresin nasıl alındığını aşağıda anlattım
//eklediğim siteden aradığım veriyi çekiyorum
HtmlAgilityPack.HtmlDocument dolarsatısdeger = new HtmlAgilityPack.HtmlDocument(); dolarsatısdeger.LoadHtml(site1);
string dolarsat = dolarsatısdeger.DocumentNode.SelectNodes("//*[@id=\"content\"]/div[2]/div/div[2]/div[3]/span[2]")[0].InnerText;
//euro çektirme
string site2 = client.DownloadString("https://bigpara.hurriyet.com.tr/doviz/euro/");
//Veri çekeceğim siteyi ekliyorum
HtmlAgilityPack.HtmlDocument euroalısdeger = new HtmlAgilityPack.HtmlDocument(); euroalısdeger.LoadHtml(site2);
string euroal = euroalısdeger.DocumentNode.SelectNodes("//*[@id=\"content\"]/div[2]/div/div[2]/div[2]/span[2]")[0].InnerText;
//eklediğim siteden aradığım veriyi çekiyorum
HtmlAgilityPack.HtmlDocument eurosatısdeger = new HtmlAgilityPack.HtmlDocument(); eurosatısdeger.LoadHtml(site2);
string eurosat = eurosatısdeger.DocumentNode.SelectNodes("//*[@id=\"content\"]/div[2]/div/div[2]/div[3]/span[2]")[0].InnerText;
//eklediğim siteden aradığım veriyi çekiyorum
textBox1.Text = dolaral;
textBox2.Text = dolarsat;
textBox4.Text = eurosat;
textBox3.Text = euroal;
//textboxlara yazdırma
}
peki bu veri yolları nereden geliyor?
yani nasıl veri çekebilirim?
verilerin xpathını alarak bunu yapabilirsiniz.
(veri yoluna sağ tık atınız)
Bu şekilde çeşitli sitelerden işinize yarayan verileri çekebilirsiniz.
okuduğunuz için teşekkürler.