Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Login Simulieren (WebBrowser) (https://www.delphipraxis.net/162935-login-simulieren-webbrowser.html)

API 11. Sep 2011 17:01

AW: Login Simulieren (WebBrowser)
 
Delphi-Quellcode:
Webbrowser1.OleObject.document.forms.item(1).elements.item('signin[username]').value := Edit1.Text;
Webbrowser1.OleObject.document.forms.item(1).elements.item('signin[password]').value := Edit2.Text;
Webbrowser1.OleObject.document.forms.item(1).Submit;
// oder: Webbrowser1.OleObject.document.forms.item(1).elements.item(3).click;
oder kürzer:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  OleObj: Variant;
begin
  OleObj := Webbrowser1.OleObject.document.forms.item(1);
  OleObj.elements.item('signin[username]').value := 'Edit1.Text';
  OleObj.elements.item('signin[password]').value := 'Edit2.Text';
  OleObj.Submit;
end;
oder "sicherer":

Delphi-Quellcode:
uses
  MSHTML;

procedure SetInputText(FormElement: IHTMLFormElement; ItemName, ItemText: string);
var
   field: IHTMLElement;
   inputField: IHTMLInputElement;
begin
   if Supports(FormElement.Item(ItemName,EmptyParam), IHTMLElement, field) then
   begin
     inputField := field as IHTMLInputElement;
     inputField.value := ItemText;
   end;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  htmlDoc2: IHTMLDocument2;
  allForms: IHTMLElementCollection;
  myForm: IHTMLFormElement;
begin
  if Supports(WebBrowser1.Document, IHTMLDocument2, htmlDoc2) then
  begin
    allForms := htmlDoc2.Forms;
    if allForms.length > 1 then
    begin
      myForm := allForms.Item(1, EmptyParam) as IHTMLFormElement;
      SetInputText(myForm, 'signin[username]','username...');
      SetInputText(myForm, 'signin[password]','password...');
      myForm.submit;
    end;
  end;
end;

GouJetir 11. Sep 2011 17:24

AW: Login Simulieren (WebBrowser)
 
Ah danke aber wieso kommt da jetzt in den Klammern eine (1) ?

wicht 11. Sep 2011 17:51

AW: Login Simulieren (WebBrowser)
 
Ohne den TWebbrowser zu kennen vermute ich, dass da eine 1 steht, weil es sich um die Zweite Form im Dokument handelt.

Ganz allgemeiner Tipp: Erstmal kleine Sachen versuchen und Tutorials durcharbeiten...

geskill 11. Sep 2011 19:40

AW: Login Simulieren (WebBrowser)
 
Liste der Anhänge anzeigen (Anzahl: 1)
Exakt wicht, die Webseite hat 2 Loginmöglichkeiten. Oben rechts erscheint ein Fenster, wenn man mit der Maus draufklickt oder eben das Login-Formular in der Mitte.

Dieser Code sollte aber eigentlich auch funktionieren:
Delphi-Quellcode:
Webbrowser1.OleObject.document.forms.item(0).elements.item('signin[username]').value := Edit1.Text;
Webbrowser1.OleObject.document.forms.item(0).elements.item('signin[password]').value := Edit2.Text;
Webbrowser1.OleObject.document.forms.item(0).Submit;
Damit ihr euch hier nicht durch den Quellcode wühlt, möchte ich euch mal auf das Webdeveloper FF Plugin aufmerksam machen. Im Anhang ein Sceen wie man schnell und sauber an die Infos kommt.

So sieht man auch am schnellsten, wie sauber die Webseite gemacht wurde ich sag nur Max. Zeichen :roll:

Matze 12. Sep 2011 05:16

AW: Login Simulieren (WebBrowser)
 
Hier wurde meiner Meinung nach bereits viel zu viel geschrieben.
Ich möchte dir nichts unterstellen, aber die AGB von dshini sagen folgendes:
Zitat:

Deshalb ist es insbesondere unzulässig, im Wege automatisierter Prozesse die Schaffung von Belohnungspunkten künstlich herbeizuführen.
Momentan deutet alles darauf hin, dass du genau das verwirklichen möchtest. Aus diesem Grund werde ich das Thema vorsichtshalber schließen, denn einen Verstoß gegen die AGB unterstützen wir hier nicht.

Solltest du andere Gründe für das automatische Einlochen haben, kannst du dich gerne per PN an eines unserer Teammitglieder wenden und plausible Gründe nennen. Evtl. wird das Thema dann wieder eröffnet. Wenn nicht, bleibt es geschlossen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:51 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz