VB.NET WebBrowser1 otomatik doldurma

Vatansever

Asistan
Katılım
23 Ağustos 2007
Mesajlar
405
Reaksiyon puanı
1
Puanları
18
Arkadaşlar enpara.com'da günlük dolar alıp satmamda bana yardımcı olsun diye program yapıyorum epey ilerledi şimdi programıma web browser ekledim dolar kısa bir süreliğine düşerse vakik kaybetmeden bankaya bağlanıp alım satım yapayım diye ama banka sayfasındaki forma şifre otomatik girip giriş butonuna basılsın istiyorum, vakit nakittir. Sanırım kodlarıda buldum ama sorun şuki bu kodlara ne yazıcam bilmiyorum, internet explorer bu adrese Finansbank Enpara.com girin üstte Görünüm\Kaynak seçeneklerini seçin işte kaynak ama kodlara ne yazıcam

Bu kodlar benim yazdığım değil internetten bulduğum
Kod:
Public Class Form1
    Private Sub Form1_Load(sender As Object, e As System.EventArgs) Handles Me.Load
        WebBrowser1.Navigate("https://internetsubesi.finansbank.enpara.com/Login/LoginPage.aspx")
    End Sub

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        WebBrowser1.Document.GetElementById("reservationCode").SetAttribute("Value", txtReservationCode.Text)
        WebBrowser1.Document.GetElementById("phoneNumber").SetAttribute("Value", "85212345678")
        WebBrowser1.Document.GetElementById("captchaAnswer").SetAttribute("Value", txtVerifyText.Text)
        WebBrowser1.Document.GetElementById("continue").InvokeMember("click")
    End Sub
End Class

Roboform programında otomatik girişte kaydedilen parola bilgisine baktığımda
txtuserid
txtpass
başlıkları altında kaydedildiğini gördüm
 

Vatansever

Asistan
Katılım
23 Ağustos 2007
Mesajlar
405
Reaksiyon puanı
1
Puanları
18
Yazdığım kodlarda gereksiz kod varmı bilmem ama denemelerimde aşağıdaki kodun başarılı bir şekilde çalıştığını gördüm

Kod:
    Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted

        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtuserid").Focus()
        SendKeys.Send("{ENTER}")
        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtuserid").SetAttribute("Value", "0000000")
        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtuserid").RemoveFocus()


        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtpass").Focus()
        SendKeys.Send("{ENTER}")
        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtpass").SetAttribute("Value", "111111")
        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtpass").RemoveFocus()

        For Each elem As HtmlElement In WebBrowser1.Document.All
            If elem.GetAttribute("class") = "ctl00$MainContent$lbtnNext" Then
                elem.InvokeMember("click")
            End If
        Next

    End Sub
 

sisarpbilenadam

Öğrenci
Katılım
11 Ağustos 2016
Mesajlar
9
Reaksiyon puanı
0
Puanları
1
Yaş
23
Yazdığım kodlarda gereksiz kod varmı bilmem ama denemelerimde aşağıdaki kodun başarılı bir şekilde çalıştığını gördüm

Kod:
    Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As System.Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted

        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtuserid").Focus()
        SendKeys.Send("{ENTER}")
        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtuserid").SetAttribute("Value", "0000000")
        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtuserid").RemoveFocus()


        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtpass").Focus()
        SendKeys.Send("{ENTER}")
        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtpass").SetAttribute("Value", "111111")
        WebBrowser1.Document.GetElementById("ctl00$MainContent$txtpass").RemoveFocus()

        For Each elem As HtmlElement In WebBrowser1.Document.All
            If elem.GetAttribute("class") = "ctl00$MainContent$lbtnNext" Then
                elem.InvokeMember("click")
            End If
        Next

    End Sub
Hocam bu kodlar doğru görünüyor. Hangi sitede uygulamaya çalışıyorsunuz bu işlemleri ? Uygulamaya çalıştığınız sitenin kaynak kodlarını görüntüleyip orda idlerini vs. bulmanız gerekir. Demek istediğim bu kod daha sağlıklı hale getirilebilir.
 

sisarpbilenadam

Öğrenci
Katılım
11 Ağustos 2016
Mesajlar
9
Reaksiyon puanı
0
Puanları
1
Yaş
23
Hocam uygulama bu haliyle çalışır fakat pek verimli olmaz. Bu uygulamayı daha verimli hale getirebiliriz. Fakat benim kullandığım dil C# isterseniz VB.NET için de deneyebilirim.
 

Vatansever

Asistan
Katılım
23 Ağustos 2007
Mesajlar
405
Reaksiyon puanı
1
Puanları
18
online c# vb.net çeviriciler var oradan çevirmeyi denerim
 

sisarpbilenadam

Öğrenci
Katılım
11 Ağustos 2016
Mesajlar
9
Reaksiyon puanı
0
Puanları
1
Yaş
23
Hocam VB.NET ile yazdım çalışıyor işte kodlar:
Kod:
Public Class Form1
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        WebBrowser1.Navigate("https://internetsubesi.finansbank.enpara.com/Login/LoginPage.aspx")

    End Sub

    Private Sub WebBrowser1_DocumentCompleted(sender As Object, e As WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
        WebBrowser1.Document.GetElementById("txtuserid").InnerText = "tcno"
        WebBrowser1.Document.GetElementById("txtpass").InnerText = "şifre"
        WebBrowser1.Document.GetElementById("ctl00_MainContent_lbtnNext").InvokeMember("click")

    End Sub
End Class

Bu şekilde giriyor tabi benim hesabım olmadığı için kullanıcı yanlış vs hatası beriyor orda kendi bilgilerinizi yerletirirseniz sıkıntı olmaz
 

Vatansever

Asistan
Katılım
23 Ağustos 2007
Mesajlar
405
Reaksiyon puanı
1
Puanları
18
Kodu denedim olmuyor zaten en yukarıda internetten bulduğum kodun aynısı sadece txtuserid gibi değerleri farklı , sanırım benim kod yeterli hiç problem çıkmadan sms şifresini girdiğim bölüme geçiliyor istediğim buydu siteye en hızlı şekilde girip dolar alım satımı yapmak
 

sisarpbilenadam

Öğrenci
Katılım
11 Ağustos 2016
Mesajlar
9
Reaksiyon puanı
0
Puanları
1
Yaş
23
Kodu denedim olmuyor zaten en yukarıda internetten bulduğum kodun aynısı sadece txtuserid gibi değerleri farklı , sanırım benim kod yeterli hiç problem çıkmadan sms şifresini girdiğim bölüme geçiliyor istediğim buydu siteye en hızlı şekilde girip dolar alım satımı yapmak
Kod nerde hata veriyor. Olmuyordan kastınız ne ?
 

Vatansever

Asistan
Katılım
23 Ağustos 2007
Mesajlar
405
Reaksiyon puanı
1
Puanları
18
Verdiğin kodu kullandığımda şifreler yerlerine girilmiş oluyor ama hepsi salt okunur oluyor hiçbirşeyi değiştiremiyorsun giriş butonuna bastığında ise hiçbir hareket olmuyor. Benim kodlarımda ise bu sayfa çok hızlı geçip sms şiresi girme kısmı geliyor olması gereken bu.
 
Üst