Virtual Basic / Queltext Problem.

  • VB.NET

Es gibt 18 Antworten in diesem Thema. Der letzte Beitrag () ist von Slexout.

    Virtual Basic / Queltext Problem.

    Hallo liebes Forum. Ich hab einen Webbrowser erstellt, und hab gesehen in einem Video namens "Web Bot" Das man ein Passwort speichern kann, und auf Knopfdruck dann einfügen kann. Nun hab ich das gleiche mit einer Registierung vor. Es läuft bis jetzt gut mit dem Passwort und dem Login und der Email etc.. Nur beim Vornamen und Nachnamen hab ich Folgendes Problem :

    In meinem Code steht dieß :

    VB.NET-Quellcode

    1. WebBrowser1.Document.GetElementById("forename").InnerText = TextBox1.Text 'für den Vornamen
    2. WebBrowser1.Document.GetElementById("surname").InnerText = TextBox2.Text 'für den Nachnamen


    Das mit dem forename und surname hab ich aus dem Quelcode meiner Seite, und auf meiner Seite steht Volgendes im Quelcode :

    PHP-Quellcode

    1. 1. <div class="item row1 upfField" id="forename">


    und gleich da drunter :

    PHP-Quellcode

    1. 2. <input type="text" name="forename" id="forename" class="text short" value="" />


    Das Problem liegt daran das er die Id vom : 1.ten benutzt

    Er soll aber die Id vom : 2.ten benutzen.

    Immer wenn er das 1. benutzt verändert er auf der Seite den Label. Er schreibt nichts in die Textbox.



    Würde mich auf Nette weiterhelfende Antworten Freuen. Ich hoffe ich hab mein Problem gut ausgedrückt.

    TheMatI schrieb:

    TextBox1.Text = WebBrowser1....


    Mein Problem ist das er das durch die Id erkennt, und ich habe im Quellcode 2 mal : Id : "username"

    //edit : Um es nochmal genauer Klar zu stellen..

    Die Id die ich Nicht brauche ist hier drinne :

    PHP-Quellcode

    1. <div class="item row1 upfField" id="forename">

    Das Markiere ich jetzt mit : Text1


    Die Id die ich brauche ist hier drinne :

    PHP-Quellcode

    1. <input type="text" name="forename" id="forename" class="text short" value="" />

    Das Markiere ich jetzt mit : Text2

    Da Text1 im Quelltext vor Text2 erscheint, benutzt das Programm die Id aus dem Text1.

    Wie mache ich es nun so Text2 zu Verwenden, ohne meine Page umzuschreiben?

    Danke für Antworten.
    Lg.

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Slexout“ ()

    Also einen Webbrowser der auf Knopfdruck was einträgt. ( So wie ein Login )

    Nur im Quelltext muss ich die Id :

    PHP-Quellcode

    1. "forename"

    verwenden.

    Die taucht im Quellcode aber davor noch 1. Mal auf. ( Wegen dem Label davon. )

    1. Auftauchen

    PHP-Quellcode

    1. <div class="item row1 upfField" id=[u]"forename"[/u]>


    2. Auftauchen

    PHP-Quellcode

    1. <input type="text" name="forename" id=[u]"forename"[/u] class="text short" value="" />


    Das 1. Auftauchen ist wie gesagt für den Label. Ich brauche aber das 2. Auftauchen für die Textbox. ( Natürlich auf der Page )

    Meine Frage : Kann man das 1. Auftauchen Ignorieren, und es Irgendwie ermögligen das er die Id aus dem Code nimmt :

    PHP-Quellcode

    1. <input type="text" name="forename" id=[u]"forename"[/u] class="text short" value="" />


    Lg.

    AliveDevil schrieb:

    ja...lern VB^^

    Bin gerade dabei.. Aber ich glaube nicht ich lese mir jetzt in den nächsten 10 Minuten. Galileo Openbook durch oder sonst was.. :D

    Jetzt ehrlich.. Das ist ein großes Problem für mich helf mal weiter.

    Es gibt bestimmt irgendeine Funktion das er die Quelltext Id von unter nimmt anstatt von Oben.
    Mann nervt mich das hier die die helfen wollen haben keinen Plan was er will, und der der Hilfe sucht ist totaler Anfänger und will mit RegEx rumspielen. WTF??

    Also, er hat es mehr als einmal verständlich vermittelt, was er möchte. Du suchst die ID forename, aber nur bei type="text"

    Das ist eigentlich leicht, aber zu schwer als dass Ich dir raten würde, damit zu arbeiten. So geht's

    VB.NET-Quellcode

    1. Dim Quellcode As String = "Dein QuellCode"
    2. Dim DieID As String = System.Text.RegularExpressions.RegEx.Match(Quellcode, "<input type\=\""text\"" id\=[a-z]+", RegExOptions.IgnoreCase).ToString
    3. DieID = RegEx.Replace(DieID, "<input type\=\""text\"" id\=", "", RegExOptions.IgnoreCase)
    4. MsgBox("Die gesuchte ID ist: " & DieID)


    link_275 :thumbup:


    //EDIT: @TheMatI: Völlig unnsinniges Crossposting. Unerwünscht :huh:
    Hello World

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „link_275“ ()

    Ich hab es nun so, beim Form Load :

    VB.NET-Quellcode

    1. Dim Quellcode As String = <input type="text" name="forename" id="forename" class="text short" value=""/>
    2. Dim forename As String = System.Text.RegularExpressions.Regex.Match(Quellcode, "<input type\=\""text\"" id\=[a-z]+", RegExOptions.IgnoreCase).ToString


    Und bei meinem Button :

    VB.NET-Quellcode

    1. forename = RegEx.Replace(forename, "<input type\=\""text\"" id\=", "", RegExOptions.IgnoreCase)
    2. MsgBox("Die gesuchte ID ist: " & forename)


    Es tauchen aber immernoch Fehler auf die mir Sagen das RegEx und RegExOption nicht Deklariert sind.

    //Edit Jetzt hab ich ja wieder Müll drauß gemacht.. Sry hab erst jetzt richtig nachgedacht. Aber wenn ich da beim anfang den Quellcode reinmache, das mit dem Type Text Taucht ein Synaxfehler auf :

    VB.NET-Quellcode

    1. Dim Quellcode As String = "<input type="text" name="forename" id="forename" class="text short" value="" />"


    link_275 schrieb:

    Das ist eigentlich leicht, aber zu schwer als dass Ich dir raten würde, damit zu arbeiten. So geht's


    Visual Basic Quellcode


    VB.NET-Quellcode

    1. Dim Quellcode As String = "Dein QuellCode"
    2. Dim DieID As String = System.Text.RegularExpressions.RegEx.Match(Quellcode, "<input type\=\""text\"" id\=[a-z]+", RegExOptions.IgnoreCase).ToString
    3. DieID = RegEx.Replace(DieID, "<input type\=\""text\"" id\=", "", RegExOptions.IgnoreCase)
    4. MsgBox("Die gesuchte ID ist: " & DieID)




    link_275 :thumbup:


    Ich hab es nun So :

    VB.NET-Quellcode

    1. Dim Quellcode As String = <input type="text" name="forename" id="forename" class="text short" value=""/>
    2. Dim DieID As String = System.Text.RegularExpressions.Regex.Match(Quellcode, "<input type\=\""text\"" id\=[a-z]+", RegExOptions.IgnoreCase).ToString
    3. DieID = RegEx.Replace(DieID, "<input type\=\""text\"" id\=", "", RegExOptions.IgnoreCase)


    Nur das mit dem RegEx wird nicht erkannt muss ich nicht noch Irgendwas damit machen :

    VB.NET-Quellcode

    1. Dim RegEx .....

    Sry hab ja totalen Quatsch drauß gemacht.

    Edit by ~blaze~:
    *Beiträge zusammengefügt*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „~blaze~“ ()

    Du musst

    VB.NET-Quellcode

    1. Imports System.Text.RegularExpressions

    in die allererste Zeile des Codes schreiben, also noch über Public Class Form1
    Stichwort Fehleranalyse, IntelliSense
    PS und bitte keine Doppelpostings mehr, das wird hier nicht gern geseh'n

    link_275 :thumbup:
    Hello World
    War ausversehen wegen dem Doppelpost ich wollte es editieren. Danke für deine Hilfe ich werd es gleich mal Testen.

    //edit : Ich hab es nun gemacht jetzt sieht mein Code am anfang so aus, es taucht aber noch ein Error auf :

    VB.NET-Quellcode

    1. Imports System.Text.RegularExpressions
    2. Public Class Form3
    3. Dim Quellcode As String = <input type="text" name="forename" id="forename" class="text short" value=""/>
    4. Dim DieID As String = System.Text.RegularExpressions.Regex.Match(Quellcode, "<input type\=\""text\"" id\=[a-z]+", RegexOptions.IgnoreCase).ToString
    5. DieID = RegEx.Replace(DieID, "<input type\=\""text\"" id\=", "", RegExOptions.IgnoreCase) 'In der Zeile ist der Error.


    "Deklartion Erwartet"
    Das Verstehe ich ja nicht weil im Code ja Dim DieID As String vorhanden ist..

    Lg.
    Ja ist shcon klar, ABER
    Strings immer in Anführungszeichen! also Dim Quellcode As String = "<input blablabla"
    Und innerhalb dieses Strings wenn du dort Anführungszeichen haben willst, musst du doppelte machen, also "", wie beispielsweise bei type="text", das muus heißen
    type=""text""



    link_275
    Hello World

    link_275 schrieb:

    "<input blablabla"

    Als ich das gemacht hab tauchte der Synax fehler auf. Also soll ich es den so machen?

    VB.NET-Quellcode

    1. ""Dim Quellcode As String = <input type="text" name="forename" id="forename" class="text short" value=""/>""


    Edit kommt gleich..


    //edit :
    Wenn ich es so mache :

    VB.NET-Quellcode

    1. Dim Quellcode As String = <input type="text" name="forename" id="forename" class="text short" value=""/>

    Kommt kein Error.

    Wenn ich es so mache :

    VB.NET-Quellcode

    1. "Dim Quellcode As String = <input type="text" name="forename" id="forename" class="text short" value=""/>"

    Kommt ein Error.

    Wenn so :

    VB.NET-Quellcode

    1. ""Dim Quellcode As String = <input type="text" name="forename" id="forename" class="text short" value=""/>""

    Dann kommt auch ein Error.


    Beim 2 und 3 Code kommt der Error : End of anweißung erwartet.

    Könntest du mit zeigen wie ich es genau schreiben soll. Ich glaub ich bin noch nicht so Schlau :)