Delphi-PRAXiS
Seite 1 von 2  1 2   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Ebay Login geht nicht mehr (https://www.delphipraxis.net/189540-ebay-login-geht-nicht-mehr.html)

Natcree 22. Jun 2016 15:14

Ebay Login geht nicht mehr
 
möchte mich über die Twebbrowser Kompo in meinem Ebay Acount einloggen. was auch bis vor einer Woch klappte. jetzt aber nicht mehr

hier mal mein code für den Login

Delphi-Quellcode:
  webbrowser1.Navigate('https://signin.ebay.de/ws/eBayISAPI.dll?SignIn');
  while WebBrowser1.ReadyState <> READYSTATE_COMPLETE do begin
  Pause(5);
  end;
  Webbrowser1.OleObject.document.forms.item(0).elements.item('userid').value := 'Benutzername';
  webbrowser1.OleObject.document.forms.item(0).elements.item('pass').value := 'meinpasswort';
  Webbrowser1.OleObject.document.forms.item(0).elements.item('sgnBt').click;
Er bringt mir jetzt fehlermeldung "Method 'click' not supported by an automation object.

Ich hoffe Ihr könnt mir Helfen???

Neutral General 22. Jun 2016 15:59

AW: Ebay Login geht nicht mehr
 
Vielleicht heißt der Button mittlerweile anders?

t.roller 22. Jun 2016 16:21

AW: Ebay Login geht nicht mehr
 
sgnBtn !

Natcree 22. Jun 2016 16:26

AW: Ebay Login geht nicht mehr
 
sgnBtn geht auch nicht ????

markus5766h 22. Jun 2016 16:29

AW: Ebay Login geht nicht mehr
 
Zitat:

Zitat von t.roller (Beitrag 1340796)
sgnBtn !


type="button"
name="sgnBt"
id="sgnBtn"

p80286 22. Jun 2016 16:38

AW: Ebay Login geht nicht mehr
 
es ist leider zu lange her, daß ich etwas damit gemacht habe, aber
Delphi-Quellcode:
  while WebBrowser1.ReadyState <> READYSTATE_COMPLETE do begin
  Pause(5);
  end;
das ist eine Bastellösung, ich müßte heute Abend mal nachschauen wie es besser geht.

Könnte es sein, daß da Frames übertragen werden?

Zitat:

Zitat von Natcree (Beitrag 1340791)
Er bringt mir jetzt fehlermeldung "Method 'click' not supported by an automation object.

Ist doch eindeutig, zu dem Zeitpunkt zu dem Du .click aufrufst, ist (noch) nichts zu clicken da.

gruß
K-H

t.roller 22. Jun 2016 16:50

AW: Ebay Login geht nicht mehr
 
Webbrowser1.OleObject.document.forms.item(0).eleme nts.item('sgnBtn').click;
ist richtig, aber der vorangestellte "Rest" ist falsch.

Natcree 22. Jun 2016 17:06

AW: Ebay Login geht nicht mehr
 
Den rest habe ich jetzt ausgeklammert . ich gebe manuel den benutzernamen und passwort ein und klicke dann
Delphi-Quellcode:
Webbrowser1.OleObject.document.forms.item(0).eleme nts.item('sgnBtn').click;
über eine schaltfläche. es passiert nichts.

himitsu 22. Jun 2016 17:08

AW: Ebay Login geht nicht mehr
 
eBay hat eine API und die sollte man eigentlich auch benutzen.
Das direkte maschinelle Verarbeiten der normalen Webseite nicht wirklich erlaubt und wenn ich eBay wäre, würde ich da auch ab und an mal ein paar neue Hindernisse einbauen, damit gewisse Leute da Probleme bekommen. :stupid:

https://go.developer.ebay.com/what-ebay-api
https://go.developer.ebay.com/
https://go.developer.ebay.com/api-documentation

t.roller 22. Jun 2016 19:51

AW: Ebay Login geht nicht mehr
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier habe ich eine Lösung: (EXE im Anhang)
Delphi-Quellcode:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.OleCtrls, SHDocVw;

type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    Button1: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure WebBrowser1DocumentComplete(ASender: TObject;
      const pDisp: IDispatch; const URL: OleVariant);
    procedure FormFill(WebBrowser1:TWebBrowser; ElementName, Value: string);
    procedure FormSubmit(WebBrowser1:TWebBrowser; ElementName, Value: string);

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  flag:Boolean=False;

implementation

{$R *.dfm}

procedure TForm1.FormFill(WebBrowser1:TWebBrowser; ElementName, Value: string);
var
  i, j: Integer;
  FormItem: Variant;
begin
  for I := 0 to WebBrowser1.OleObject.Document.forms.Length - 1 do
  begin
    FormItem := WebBrowser1.OleObject.Document.forms.Item(I);
    for j := 0 to FormItem.Length - 1 do
    begin
      try
        if FormItem.Item(j).Name = ElementName then
        begin
          FormItem.Item(j).Value := Value;
          Exit;
        end;
      except
        Exit;
      end;
    end;
  end;
end;

procedure TForm1.FormSubmit(WebBrowser1:TWebBrowser; ElementName, Value: string);
var
  i, j: Integer;
  FormItem: Variant;
begin
   for I := 0 to WebBrowser1.OleObject.Document.forms.Length - 1 do
  begin
    FormItem := WebBrowser1.OleObject.Document.forms.Item(I);
    for j := 0 to FormItem.Length - 1 do
    begin
      try //when the Submit Button is found click
        if FormItem.Item(j).type = ElementName then
        begin
          FormItem.Item(j).Value := Value;
          FormItem.Item(j).click;
        end;
      except
        Exit;
      end;
    end;
  end;
end;

procedure TForm1.WebBrowser1DocumentComplete(ASender: TObject;
  const pDisp: IDispatch; const URL: OleVariant);
begin
  if flag then exit;
  FormFill(WebBrowser1, 'userid', Edit1.Text);
  FormFill(WebBrowser1, 'pass', Edit2.Text);
  FormSubmit(WebBrowser1, 'submit','sgnBt');
  flag := true;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
WebBrowser1.Navigate('https://signin.ebay.de/ws/eBayISAPI.dll?SignIn');
end;

end.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:08 Uhr.
Seite 1 von 2  1 2   

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