none
web browser ile login olup veri çekme RRS feed

  • Genel Tartışma

  • merhaba form üzerine web browser ekledim siteye giriyorum, arama alanına form üzerinde ki textbox ın içindeki veriyide atıyorum ama ara yap diyeceğim butonun id bilgisi yok o yüzden aratamıyorum. ayrıca arama sonucunu bi alana yazıyor bir iki kelimelik bişey onuda form üzerinde ki başka textbox a aktarmak istiyorum yardımcı olursanız sevinirim.

    arama alanına veriyi böyle dolduruyorum

    webBrowser1.Document.GetElementById("studentTckn").SetAttribute("Value", textBox1.Text);

    genelde butonun id si içinde şunu yapıyordum 

    webBrowser1.Document.GetElementById("xxxxx").invokeMember("click"); bu işe yaramıyor zira xxxx dediğim alanlara yazacak id yok. butona öğeyi denetle deyince şunlar çıkıyor

    <div class="actions">
                        <button class="btn primary" type="submit">Tamam</button>&nbsp;<button class="btn" type="reset">Vazgeç</button>
                    </div> 

    veriyi çekmek içinde şunu yazdım çalışıyor mu bilmiyorum zira o kısma geçemedim daha result-area çıkan yazının id si 

                string stId = webBrowser1.Document.GetElementById("result-area").GetAttribute("Value");
                 
                textBox2.Text = stId.ToString();


    19 Kasım 2015 Perşembe 15:59

Tüm Yanıtlar

  • For Each element As HtmlElement In webbrowser1.Document.GetElementsByTagName("button")
        If element.GetAttribute("class") = "btn primary" Then
            If element.InnerText = "Tamam" Then
                element.InvokeMember("click")
            End If
        End If
    Next
    ıd siz butona tıklatma 
    19 Kasım 2015 Perşembe 16:35
  • hocam bu vb ile yazılmış ben c# için soruyorum da kusura bakmayın
    19 Kasım 2015 Perşembe 16:49
  • foreach (HtmlElement element in webbrowser1.Document.GetElementsByTagName("button")) {
        if (element.GetAttribute("class") == "btn primary") {
            if (element.InnerText == "Tamam") {
                element.InvokeMember("click");
            }
        }
    }
    convert edersiniz diye düşündüm ama buyrun c# ile olanıda burda :)
    19 Kasım 2015 Perşembe 17:03
  • hocam denedim ama yine olmadı sitede tık yok anlamadım gitti 
    19 Kasım 2015 Perşembe 17:31
  • şuanda login olmayıda yapmıyor face de denemiştim kodları yapıyordu burada da olur zannettin onda sorun yok dedim ama burada da olmuyor textbox ların içinde ki verileri gerekli alanlara atıyor ama tıklama işini yaparak login olmuyor.

    facede çalışan kodlar şunlar

      webBrowser1.Document.GetElementById("username").SetAttribute("value", textBox3.Text);
      webBrowser1.Document.GetElementById("password").SetAttribute("value", textBox4.Text);
      webBrowser1.Document.GetElementById("oldPage").InvokeMember("click");

    sitenin login kodları şunlar

    <input name="username" id="username" size="40" value="" tab-index="0" type="text">

    <input name="password" id="password" size="40" tab-index="1" type="password">

    <input value="GİRİŞ" class="orangeButton" tab-index="2" type="submit">

    19 Kasım 2015 Perşembe 17:56
  • şuanda login olmayıda yapmıyor face de denemiştim kodları yapıyordu burada da olur zannettin onda sorun yok dedim ama burada da olmuyor textbox ların içinde ki verileri gerekli alanlara atıyor ama tıklama işini yaparak login olmuyor.

    facede çalışan kodlar şunlar

      webBrowser1.Document.GetElementById("username").SetAttribute("value", textBox3.Text);
      webBrowser1.Document.GetElementById("password").SetAttribute("value", textBox4.Text);
      webBrowser1.Document.GetElementById("oldPage").InvokeMember("click");

    sitenin login kodları şunlar

    <input name="username" id="username" size="40" value="" tab-index="0" type="text">

    <input name="password" id="password" size="40" tab-index="1" type="password">

    <input value="GİRİŞ" class="orangeButton" tab-index="2" type="submit">

    yukarda verdigim koddaki btn primary yerine orangeButton yazın
    19 Kasım 2015 Perşembe 18:31
  • hocam denedim onuda olmuyor bir türlü benim yazdığım 3 satır kodda enazından textbox içinde ki değerleri login kısmına atıyor sizin verdiğinizde login kısmına değerleride atamıyor giriş de yapmıyor 
    19 Kasım 2015 Perşembe 19:11
  • yardımcı olacak kimse yok mu acaba
    19 Kasım 2015 Perşembe 20:42
  • Arkadaşların verdiği kodlar çalışması lazım eğer sizce de mahsuru yoksa sitenin linkini verin.Kodları deneyerek sonuç bulunca geri dönüş yapalım.
    19 Kasım 2015 Perşembe 21:02
  • hocam site resmi bir kurumun dediğim yer için giriş yapmanız gerek. login olayını şu kodlarla çözdüm.

    webBrowser1.Document.All["username"].SetAttribute("value", textBox3.Text);
                webBrowser1.Document.All["password"].SetAttribute("value", textBox4.Text);
                webBrowser1.Document.Forms["login"].InvokeMember("submit");

    şimdi bir arama alanına değer girip (değer girdirebiliyorum) sonrasında yine tamam butonuna bastırmam lazım ki butonun id yok yukarıda ki gibi form üzerinde yapayim dedim formun id si ile başka bir sayfada ki form id aynı o sayfaya yönleniyor ve donuyor. form ların class ları farklı öyle yapayim dedim class olayın içinde yukarıda ki kodları denedim yine olmadı.

    <form id="sifreDegistir" class="ajaxedFormCustom" action="/servis.php?op=profile_studentpass">
                    <fieldset>
                        <legend>Şifre Atama</legend>
                        <div class="clearfix">
                            <label for="studentTckn">Öğrenci TC Kimlik Numarası</label>
                            <div class="input">
                                <input type="password" size="30" name="studentTckn" id="studentTckn" class="xlarge">
                                <br><br><i>* Otomatik şifre atamak için öğrencinin TC Kimlik Numarasını girin</i>
                            </div>
                        </div>
                    </fieldset>
                    <div class="actions">
                        <button class="btn primary" type="submit">Tamam</button>&nbsp;<button class="btn" type="reset">Vazgeç</button>
                    </div>
                </form>


    • Düzenleyen xxltc06 19 Kasım 2015 Perşembe 21:39
    19 Kasım 2015 Perşembe 21:38
  • ark lar bu konuda yardımcı olacak kimse yok mu kodlar çalışmıyor. sıkıntıyı bir üstte ki açıklamada belirttim. login olabiliyorum ama sonrasında ki sayfada sorgulama yaptıramıyorum. o sayfanın sorgulama alanının id var ama button sıkıntı butonun id yok ve bu alanda

    <div class="actions">
                        <button class="btn primary" type="submit">Tamam</button>&nbsp;<button class="btn" type="reset">Vazgeç</button>
                    </div>

    form üzerinden gideyim dedim ama formun id başka bir sayfada ki form idile aynı oradan deneyince sayfa donuyor sanırım diğer sayfaya gitmeye çalışıyor. yukarıda ki form alanı şöyle

    <form id="sifreDegistir" class="ajaxedFormCustom" 

    devam ediyor diğer syfa da da form id "sifredegistir" ama class farklı form ların class lardan da denedim ama olmadı nasıl yapacağımı bilemedim yardımcı olursanız sevinirim. 

    20 Kasım 2015 Cuma 13:06
  • ark lar forum id üzerinden değilde şurda yaptığım gibi (login forum id ismi) ama yapacağım sayfada için id aynı 2 tane form var class lar farklı bunu için aşağıda ki gibi bir kod varmı acaba

    webBrowser1.Document.Forms["login"].InvokeMember("submit");


    22 Kasım 2015 Pazar 16:06