Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

WebBrowser-Controll - Automatisch WebFormulare ausfüllen

Empfohlene Antworten

Veröffentlicht

Hi

Kann mir jemand sagen wie man Webformulare mit dem WebBrowser Control von vb.net 2005 autmoatisch ausfüllen lassen kann?

Ich müsste wissen wie man die Werte von Textboxen, Checkboxen und Comboboxen ändern kann. Zudem müsste ich wissen wie man Buttonklicks simuliert, und man auf auf bestimmte Frames zugreift.

Kann mir da jemand weiterhelfen?:confused:

MfG

Faultier

ungetestet, sollte aber funktionieren:

- greif auf die eigenschaft Document von AxWebBrowser zu und hangle dich zu den einzelnen elementen im dokumentbaum durch.

- liste mit getElementsByTagName("input") alle generellen eingabefelder (textboxen, checkboxen, radiobuttons, ...) auf.

- mit der metode getAttribute("type") bekommst du alle arten von eingabefeldern.

- dann brauchst du ja nur zu überprüfen, ob type mit dem gesuchten element übereinstimmt und

- übergibst dem mit setAttribute("value", inhaltdeinescontrols) den gewünschten inhalt.

- dasselbe machst du mit buttons, nur wendest du dort nach ausfüllen anderer controls die methode click() an.

- setzt diesen pseudocode in die sprache deiner wahl (nicht angegeben: VB.net? C#? J#? C++/CLI? brain****?) um.

s'Amstel

Hallo, ich habe genau dasselbe Problem. Bei mir handelt es sich um vb.net 2005.

Habe im webbrowser1 ein Dokument geladen und würde gerne einen Wert in ein dort befindliches Textfeld schreiben.

Definiert ist es so:

<input type="text" name="Kenn" class="inputLang" size="25" maxlength="15" value="" />

Unter vb6 hätte ich einfach folgendes geschrieben:

WebBrowser1.Document.Forms(0).Kenn.Value = Text1.Text

das funktioniert aber unter .net nicht mehr. Was ist die Entsprechung in .net?

Vielen Dank!

f0x

Folgendes funktioniert leider nicht:

WebBrowser1.Document.Forms(0).SetAttribute("Kenn", "gg")

  • 1 Monat später...

Um bestimmte felder zu füllen könntest du auch folgendermaßen vorgehen

For Each pElement In pForm.All

If pElement.getAttribute("type") = "text" Then

If pElement.Name = "username" Then

pElement.InnerText = "test"

ElseIf pElement.Name = "password" Then

pElement.InnerText = "test"

End If

End If

Next

dann den Submit Button clicken

pForm.InvokeMember("submit")

Würde auch so funktionieren

pElement.SetAttribute("value", "test")

  • 1 Jahr später...

hi habe diesen thread über google gefunden... ich stehe vor dem gleichen problem :)

also ich habe shcon folgendes: (auszüge)

System::Windows::Forms::HtmlDocument ^pdoc= nullptr;

System::Windows::Forms::HtmlElementCollection ^elemente=nullptr;

System::Windows::Forms::HtmlElement ^element=nullptr;

pdoc = this->webBrowser1->Document;

jetzt habe ich zu über pdoc zugriff auf den quelltext, so weit so gut. ich kann ihn ausgeben, die bilder zählen ...

Aber beim finden der elemente sprich des form/ der buttons habe ich so meine probleme.

meine bisherigen versuche:

elemente = pdoc->GetElementsByTagName("input");

mit dem raussuchen des input elements mit GetAttribute("type") hab ich so meine probleme... wie mach ich das am besten?

  • 10 Monate später...

Letzte Schwierigkeiten gibt es bei mir mit dem Submit.

Ich lese mir die Felder aus, die ich verarbeiten will nur weiß ich nicht, wie ich weiter vorgehen soll.

Ich habe es mit der Click Methode versucht, jedoch braucht diese einen sender und ein HtmlElementEventArgs. Das 2. habe ich nicht und weiß nicht, was ich darin verpacken soll, falls ich mir selbst eins erstelle.

So sieht es momentan aus:

      System::Windows::Forms::HtmlElementCollection^ elems = this->webBrowser1->Document->GetElementsByTagName("input");

      for each (System::Windows::Forms::HtmlElement^ elem in elems)

      {

        String^ nameStr = elem->GetAttribute("name");

        String^ valueStr = elem->GetAttribute("value");

        if(nameStr == "von")

          elem->SetAttribute("value","8:00");

        else if(nameStr == "bis")

          elem->SetAttribute("value","16:00");

        else if(valueStr == "Übernehmen")

          elem->Click(sender,e);

      }

vll kann mir da ja jemand helfen.

Ausserdem wäre es noch super, wenn mir jemand verraten kann, wie ich das aktuelle Datum auslese.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.