C# Webbrowser Kullanımı (Bot Yapımı)

.NET framework içerisinde bulunan WebBrowser nesnesi varsayılan olarak Internet Explorer alt yapısını kullanmaktadır.
Çeşitli sebeplerden dolayı farklı tarayıcıları kullanmak da mümkündür.

C# WebBrowser ile sitelere otomatik giriş yapabilir,üye olabilir,veri çekebilir ve bir çok bot yapabilirsiniz.
Bu tamamen sizin kurgunuza ve amacınıza kalmış.
Umarım kurgularınız başkalarına zarar verecek şekilde değildir 🙂
WebBrowser konusu yararlı bir konu olduğu gibi tehlikeli de olabilir.
Genellikle bu kodlarla çok da iyi şeyler yapmıyorlar 🙂

Konumuza dönecek olursak.
Form’a bir tane textbox bir tane WebBrowser ve bir tane buton ekleyelim.
Form çalıştırıldığı anda bir siteye bağlanmasını,daha sonra butona tıkladığımızda formdaki textboxlardan bir tanesi dolduracak küçük bir kod yazalım.

webBrowser1.Navigate("http://www.deneme.com");

Yukarıdaki kodu form’un load olayına yazdığınızda form yüklenir yüklenmez belirttiğiniz siteyi açacaktır.
Açılan site üzerinde varsayılan olarak bir textbox ve bir buton olduğunu varsayarak diğer kodları yazalım.
Form’a eklediğimiz butonun click eventine aşağıdaki kodları yazalım.

webBrowser1.Document.Forms[0].GetElementsByTagName("input")[0].
SetAttribute("value", "KullaniciAdi");
HtmlElementCollection buton = webBrowser1.Document.GetElementsByTagName("button");
foreach (HtmlElement el in webBrowser1.Document.All)
{
if (el.Name == "Login")
{
el.InvokeMember("click");
}
}

Yukarıdaki kodları yazdığınızda ilk satırda WebBrowser içerisine yüklenen Formlardan ilk olanı seçerek içerisindeki inputlardan ilk olana bir value atayarak inputu dolduracaktır.
Siz kendi formlarınıza göre düzenlemeler yapabilirsiniz.
Diğer kodlarla HTMLElementCollection nesnesine WebBrowser içerisindeki “button” ların hepsini atıyoruz.
Döngü içerisinde butonları kontrol ederek bu butonlardan “name” parametresi Login olana tıklamasını istiyoruz.
Böylelikle giriş yapmak istediğimiz bir siteye gerekli parametreleri verirsek tek bir buton ile bağlanabiliriz.
Bundan sonra ki kurgular tamamen size kalmış.

Not : Bazı sitelere bağlandığınızda javascriptlerden dolayı “Komut dizisi Hatası” alınabiliyor.

446170
Bunu engellemek ve ekrana bu hatayı bastırmamak için WebBrowser properties ‘de ScriptErrorSuppressed değerini false yerine true yapmalısınız.