Bu makalemizi okumadan önce bu konunun giris niteligini tasiyan ve örnek kod bulabileceginiz "WebBrowser Kullanarak Bir Web Sayfasindaki Linkleri Bulma ve Otomatik Olarak Tiklama" isimli makalemize buradan göz atmanizi tavsiye ederim.
Bu makalemde webbrowser nesnesi hakkinda bir bilgi vermeden direk olarak facebook için otomatik login olan bir kod parçacigi paylasacagim. Facebook login sayfasinin yapisini incelersek giris için gerekli olan bilgilerin e-posta adresi ve sifre oldugunu görürüz. Sayfanin HTML kodlarini inceledigimizde e-posta adresini email isimli bir inputtan, sifreyi pass isimli bir inputtan aldiklarini görürsünüz. Giris islemi için kullanilan butona ait bir id veya name özelligi ise set edilmemis. Fakat giris islemini yapan buton bir submit islemi gerçeklestirmekte. Öyleyse biz gerekli bilgileri yazdiktan sonra ilgili forma bir submit islemi gönderirsek sorunumuzun çözülmesi gerekir.
string sifre = "******";
private void GirisYapBtn_Click(object sender, EventArgs e)
{
webBrowser1.Document.GetElementById("email").InnerText = epostaAdresi;
webBrowser1.Document.GetElementById("pass").InnerText = sifre;
webBrowser1.Document.Forms[0].InvokeMember("submit");
}
Yukaridaki kodda gördügünüz gibi tüm islem bu kadar. Artik Facebooka otomatik giris yaptirdiktan sonra ne yapmak istiyosunuz orasina karismam.
http://stackoverflow.com/questions/17270462/c-sharp-find-and-show–element-in-webbrowser – http://stackoverflow.com/questions/17270462/c-sharp-find-and-show-html-element-in-webbrowser
Hiç bir sey anlamadim bu iste yeniyim video yokmu.
biraz daha açar misiniz? yardimci olmak isterim.
mustafasolak22@hotmail.com
Merhaba,
Formdaki bir nesneye degil de formdaki nesneden örnegin textBox a nasil veri çekebiliriz? Yardimci olabilir misiniz?
Tesekkürler,
Iyi çalismalar.
Arkadaskar, webbrowser nesnesi 10 numara bir nesnedir diyebilirim. Çünkü çok yeteneklidir kendileri. Vb.net ile webbrowser nesnesini kullanirken sanki Javascript kullaniyormussunuz gibi gelir. Mesela sayfadaki nesneleri yakalamak, bunlari tetiklemek, içlerine degerler atamak birebir JAVASCRIPT dilindeki yapi gibidir. Bende bu konuda biraz açiklama yapmistim; adresimi vereyim bi girin inceleyin, istekli olan arkadaslara yardimci olacagindan eminim. Ve hotmailden mail çekme islemini anlattim bu mantikla. Umarim isinize yarar arkadaslar. Basarilar.
Basari çalisanin, kazanç emek harcayanin olsun insallah.
iyi günler..sayenizde süper bir yazilim yazdim ama kafama takilan bir konu var bu konuda bilgi almak istiyorum..Mesela bir sitemiz var..atiyorum sitemizin sag alt kösesinde bir saat var..sadece onu web browserde göstertmek istiyorum bunu webbrowserde nasil yapabilirim? yani hedefi nasil o noktaya alabilirim..
peki giris butonu submit degilde bir javascript ise mesela butonun üstüne mouse yi getirince javascript : Gir(); diye yazi çikiyor. bu sefer nasil yapacagiz?
Evet çok güzel , arkadasim verdigin emege saglik. tesekkürler.
Bu c# webbrowserda yapabilecegimiz baska güzel seylerde varmi. Her sitede olanlar disinda yani..
Paylasirsaniz sevinirim:
asa-119@hotmail.com
çok çok güzel
ne garip yorumlar var.Burda olay sadece facebooka girmek degil mesele bir web sitesine bir programla kullanici yapiyormus gibi is yaptirmak. Bunu ister web site test etmek için kullanirsin.Ister benim gibi oynadiginiz saçma web browser oyunlarini gece bekciligi yapmasi için kullanirsiniz isterseniz …. uzaar gider. Ben bu makaleyi ve bir makale daha var bu konu üzerine onu da okudugumda vay be demek ki WebBrowser nesnesi çok kullanisli birseymis regex ile ugramaya gerek yok bot yapmak için demistim. Ayrica html editör yapmakta da kullanilabiliyor webBrowser nesnesi.
sstem bu websayfasinin facebook oldugunu nerden anliyr onu belirtmemissiniz?
sayfayi firefox veya ie de acip view source diyorsunuz. sayfanin source bilgilerinden bakip isimleri ögreniyorsunuz.
birsey soracagim … o bölümlerin adlarinin ’email – pass – submit’ oldugunu nasil buluyosun ?
Iyi ki facebook sitesi açilmis. Bu siteyi kim açmissa ona çook tesekkür ederim
Halil saka yapiyoruz zaten kimsenin facebook hesabinda yok gözümüz olamazda zaten burasi paylasim sitesi hack sitesi degil.. allaha emanet ol..
Md5 Ile Facebook Hackleniyyor Ne gerek war bunlara ?
ya ben bu kodun nereye yazilacagini anlamadim daha açik bi sekilde anlatabilir misiniz rica etsem, uzun zamandir bunun nasil yapilacagini ariyodum simdi tam buldum sandim ama bu sefer de nasil yapilcagini anlamadim, simdiden tesekkürler
Hakki Bey..:D isin cinlik yanini bulursan benimlede paylasirmisin..
mgundogdu…ayni dualari benim icinde sölermisin..cok güzel yaa..
Bunla çok iyi facebook hesabi hacklenir abi ((: isin cinlik yanina bakiyorum hemen :D:D
Sorunu biraz daha açmaniz mümkünmü.
Merhaba.
Ben buradaki gibi bir giris butonuna tiklandiginda, o anda o textbox htmlElement’inde ne yaziyorsa, o yaziyi normal bir form textbox’inda göstermek istiyorum. Yani facebook’a giris için tikladigimda, o anda "email" de yazan yaziyi bir form textboxina atmak istiyorum. Ama bir türlü böyle bir sey yapamadim?
mgundogdu allah seni yazilimci etsin hemi xD hayatimda böle dua eden adam görmedim ben yaa Süper 😀
Sayfanizda bir masterpage varmi? sayfayi actiginizda kaynak kodlara bakip id sini textbox olarak belirlediginiz kontolun idsini kontrol edin. contentplace…. sekline donmus olabiir.
Aslinda verdigin kodlari baska sitelerde denedim ve çalisti ama asagidaki gibi bir html kontrolünde maalesef çalismiyor.
<input id="textbox" type="text" size="50" maxlength="160" name="{actionForm.sms}"
Yazdirmak istedigim kontrol asagidaki gibi ve yukarida sizin verdiginiz kodlari bir önceki mesajimdaki gibi düzenledim ama yine ayni hatayi aliyorum.
<input id="textbox" type="text" size="50" maxlength="160" name="{actionForm}"/>
Asagidaki gibi input olarak da denedim ama sonç ayni maalesef;
webBrowser1.Document.GetElementById("input").InnerText = epostaAdresi;
webBrowser1.Document.GetElementById("textbox"). null döndügü için inner html le erisemiyordur. webbrowser nesnesine verdiginiz sayfanin yuklenmesini beklemiyor olabilirsiniz. yada textbox isminde bir kontrol yoktur.
Kodlari asagidaki gibi yazdigimda "Object reference not set to an instance of an object." hatasi aliyorum. Neden olabilir?
string epostaAdresi = "bilgi@yazilimmutfagi.com";
webBrowser1.Document.GetElementById("textbox").InnerText = epostaAdresi;
🙂 Güzel sözeriniz için tesekkür ederim.
eline , koluna , baglantina saglik , Allah(c.c) visual studiona zeval vermesin kodunu mantik hatalari ve exceptionlara düsmekten irak eylesin. zihnine kuvvet , gözlerine iyi gelmesi için bol bol havuc versin.(amin). (ti ye almiyorum cidden söylüyorum)
Birilerini Asagilamaya Çalisinca Eline Ne Geçiyor Anlamiyorum ==>> YAKUP
gerek yok direk loada yazin birakin kod kendini isleyecektir sizin gibi proglama akillilari
Adam gayet güzel açiklamis yaw. Bu kodu ister butona koy ister page loada. Ne fark eder. Yanliz bir elestirim olacakti. bu konuyu makalenin basinda da verilen makalenin içinde yer alsaydi daha hos olurdu diye düsünüyorum. çünkü bunsuz o, onsuz bu havada kaliyor. 😉
GirisYapBtn_Click butionu icine yazdigimiz kodu alip PageLoad icine koyarsan sorunun çözülür.
sayfa load olurken giris yapilmasini kastediyorum ben?
sen bu kodu dene çalistigini gorursun. Butonu submit butonunu tiklamak formu submit etmektir zaten. buton tiklamak yerine formu submit etmek ayni gorevi yerine getirir. Ben bunu denemeden eklemedim. çalisiyo yani
tamam da burada butona tiklamamiz gerekiyor gene,onemli olan butona tiklaamadan giris yapilmasi facebookdaki butonda class nesnesi ayirt edici bir özellik onu kullanamaz miyiz?