Autor Beitrag
dennyhks1988
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Do 17.03.11 09:50 
Hallo Liebe Delphi-Forum Community,

Ich hoffe ich finde hier jemand der mir Helfen kann.
Ich versuche nun die ganze nacht schon Login-Tool für
Wer-kennt-wen zu schreiben.

Ich habs bisher geschaft das er mich via SSL Einlogt
aber nicht das wkw das Die Cookies erkent.

Im klartext heist das: Ich kann mich zwahr Einloggen
aber bekomme die Meldung das Cookies nicht gespeichert werden würden.

Drotz das ich den Indy CookieManager verwände.

Hier mal mein bisherrieges getippe:
ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
unit uMain;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IdCookie, IdIntercept, IdLogBase, IdLogEvent, StdCtrls,
  IdCookieManager, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdHTTP, StrUtils, ExtCtrls, IdIOHandler, IdIOHandlerSocket, IdIOHandlerStack,
  IdSSL, IdSSLOpenSSL;

type
  TfrmMain = class(TForm)
    IdHTTP: TIdHTTP;
    IdCookieManager: TIdCookieManager;
    memLog: TMemo;
    IdLogEvent: TIdLogEvent;
    pnlMain: TPanel;
    btnLogin: TButton;
    btnLogout: TButton;
    lblEmail: TLabel;
    edtEmail: TEdit;
    lblPassword: TLabel;
    edtPassword: TEdit;
    Button1: TButton;
    IdSSLIOHandlerSocketOpenSSL1: TIdSSLIOHandlerSocketOpenSSL;
    Button2: TButton;
    procedure btnLogoutClick(Sender: TObject);
    procedure btnLoginClick(Sender: TObject);
    procedure IdLogEventSent(ASender: TComponent; const AText, AData: string);
    procedure IdLogEventReceived(ASender: TComponent; const AText, AData: string);
    procedure IdCookieManagerNewCookie(ASender: TObject; ACookie: TIdCookieRFC2109; var VAccept: Boolean);
    procedure Button1Click(Sender: TObject);
    procedure IdHTTPRedirect(Sender: TObject; var dest: string;
      var NumRedirect: Integer; var Handled: Boolean; var VMethod: string);
    procedure Button2Click(Sender: TObject);
    private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmMain: TfrmMain;

implementation

{$R *.dfm}

procedure TfrmMain.btnLoginClick(Sender: TObject);
var
  sHTMLCode: String;
  iPos1, iPos2: Integer;
  sFormKey, sIV, sCheckCode: String;
  slParams: TStringList;
  Str_    : String;
begin
  slParams :=TStringList.Create;

  slParams.Add('loginName='+edtEmail.Text);
  slParams.Add('&pass='+edtPassword.Text);
  //slParams.Add('&stay=1');
  slParams.Add('&logIn=1');

  IdHTTP.AllowCookies := true;

  IdHTTP.Post('https://secure.wer-kennt-wen.de/login/index', slParams);
  slParams.Free;
  //Str_ := IdHTTP.Get('http://www.wer-kennt-wen.de');

end;

procedure TfrmMain.btnLogoutClick(Sender: TObject);
begin
  IdHTTP.Get('http://www.wer-kennt-wen.de/Logout');
end;

procedure TfrmMain.Button1Click(Sender: TObject);
begin
memLog.Lines.SaveToFile('C:\test.html');
end;

procedure TfrmMain.Button2Click(Sender: TObject);
var
 Str_ : String;
 s    : TStringList;
begin
 s := TStringList.Create;
 s.Add(Str_);
 s.SaveToFile('C:\test2.html');
 ShowMessage(s.Strings[0]);
 s.Free;
end;

procedure TfrmMain.IdCookieManagerNewCookie(ASender: TObject; ACookie: TIdCookieRFC2109; var VAccept: Boolean);
begin
  if (ACookie.Path = ''then ACookie.Path :='/';
  memLog.Lines.Add('New Cookie:');
  memLog.Lines.Add('  Comment: '+ACookie.Comment);
  memLog.Lines.Add('  Version: '+Inttostr(ACookie.Version));
  memLog.Lines.Add('  CookieText: '+ACookie.CookieText);
  memLog.Lines.Add('  ServerCookie: '+ACookie.ServerCookie);
  memLog.Lines.Add('  ClientCookie: '+ACookie.ClientCookie);
  memLog.Lines.Add('  Domain: '+ACookie.Domain);
  memLog.Lines.Add('  Expires: '+DateToStr(ACookie.Expires));
  memLog.Lines.Add('  CookieName: '+ACookie.CookieName);
  memLog.Lines.Add('  Path: '+ACookie.Path);
  memLog.Lines.Add('  Value: '+ACookie.Value);
  memLog.Lines.Add('  DisplayName: '+ACookie.DisplayName);
  memLog.Lines.Add('');
end;


procedure TfrmMain.IdHTTPRedirect(Sender: TObject; var dest: string;
  var NumRedirect: Integer; var Handled: Boolean; var VMethod: string);
begin
if (VMethod = 'hmPost'then VMethod := 'hmGet';
  memLog.Lines.Add('Redirect:');
  memLog.Lines.Add('  Dest: '+dest);
  memLog.Lines.Add('  NumRedirect: '+IntToStr(NumRedirect));
  memLog.Lines.Add('  Handled: '+IntToStr(Integer(Handled)));
  memLog.Lines.Add('  Method: '+IntToStr(Integer(VMethod)));
  memLog.Lines.Add('');
end;

procedure TfrmMain.IdLogEventReceived(ASender: TComponent; const AText, AData: string);
begin
  memLog.Lines.Add('Received:');
  memLog.Lines.Add(AData);
  memLog.Lines.Add('');
end;

procedure TfrmMain.IdLogEventSent(ASender: TComponent; const AText, AData: string);
begin
  memLog.Lines.Add('Sent:');
  memLog.Lines.Add(AData);
  memLog.Lines.Add('');
end;

end.


Ich weis nicht mehr was ich machen soll ich hab schon versucht das Cookie IdHTTP ohne Cookiemanager zu übergeben was aber auch nicht hilft!

Ich hab vor mir jedeglich nen Tool zu schreiben das mich bei WKW einloggt
und die Anzahl meiner Mails im Postfach Checkt bez verkleicht und mich dan Local am
Rechner benarichtigt wenn ich ne neue Mail im Postfach hab.

Lg
denny

Moderiert von user profile iconChristian S.: Code- durch Delphi-Tags ersetzt
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19340
Erhaltene Danke: 1752

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 17.03.11 10:59 
Hallo und :welcome:

user profile icondennyhks1988 hat folgendes geschrieben Zum zitierten Posting springen:
Ich hab vor mir jedeglich nen Tool zu schreiben das mich bei WKW einloggt
und die Anzahl meiner Mails im Postfach Checkt bez verkleicht und mich dan Local am
Rechner benarichtigt wenn ich ne neue Mail im Postfach hab.
Da hast du wohl die AGB des Betreibers nicht genau genug gelesen. Um genau zu sein Punkt 4.3:
WKW AGB - Punkt 4.3 hat folgendes geschrieben:
Unzulässig ist zudem der Einsatz von Skripten bei der Nutzung von wer-kennt-wen und das automatisierte Abrufen von Inhalten auf wer-kennt-wen.
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Do 17.03.11 11:11 
Und daher muss ich den Thread an dieser Stelle leider schließen.

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
Dieses Thema ist gesperrt, Du kannst keine Beiträge editieren oder beantworten.

Das Thema wurde von einem Team-Mitglied geschlossen. Wenn du mit der Schließung des Themas nicht einverstanden bist, kontaktiere bitte das Team.