Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi idhttp login (https://www.delphipraxis.net/118139-idhttp-login.html)

meama 1. Aug 2008 09:41


idhttp login
 
hi leute,
ich möchte ein programm schreiben, dass sich auf www.schuelervz.net einloggt und den quelltext der seite, die man nach deme inloggen erhält auf eine bestimmte zeichenfolge durchsucht.

nur scheitere ich schon am einloggen
ich habe es mit diesem code probiert
Delphi-Quellcode:
var
  params: TStringList;
  url: string;
begin
  url:='https://secure.schuelervz.net/Login.php?action=login';
  params := TStringList.Create;
  with params do
  begin
    Add('email='+edit1.text);
    Add('password='+edit2.text);
  end;
    idHTTP1.Post(url, params);

  params.free;

end;
aber dann erhalte ich die fehlermeldung "I/O handler value is not valid". ich weiß dass bei den indy komponenten I/O handler sind, aber welchen brauche ich und wozu brauche ich den??

MSSSSM 1. Aug 2008 12:43

Re: idhttp login
 
Du brauchst einen I/O handler, der SSL kann.

btw.: Hast du die Erlauabnis dafür?

meama 2. Aug 2008 08:22

Re: idhttp login
 
okay habe jetzt den idssliohandlersocket genommen
jetzt kriege ich ne fehlermeldung, dass er die ssl library nicht laden konnte. ich habe zwei pcs einer am internet, an dem teste ich das programm geht ja sonst schlecht, und einer an dem ich programmiere liegt's daran?

ich werde das programm nicht weitergeben und eigentlich macht das programm ja nur das was ich selbst auch machen könnte. es ist nur training für mich quasi ich programmiere meistens einfach nur zum spaß haben ich stelle mir selbst aufgaben und versuche diese zu lösen. ich denke also nicht dass ich eine genehmigung dafür brauche wenn, doch belehrt mich eines besseren

MSSSSM 2. Aug 2008 09:28

Re: idhttp login
 
Hm, OpenSSL installiert? (kp warum)
Ansonsten grad mal Assertor, der kennt sich meines Wissens bestens mit SSL und indy aus.

Assertor 2. Aug 2008 14:07

Re: idhttp login
 
Hi meama,

im Forum VCL/WinForms/Controls findest Du einen Sticky Thread:
http://www.delphipraxis.net/internal_redirect.php?f=6

Direktlink: http://www.delphipraxis.net/internal...t.php?t=135917

Installier Dir mal die DLLs.

Aber: Wie bereits angesprochen verstößt Du damit, egal ob bei Dir genutzt oder woanders, sicherlich gegen die Nutzungsbedingungen des Portal-Betreibers. Da kann ich nicht viel helfen, damit ich nicht als Mitstörer in die Haftung komme ;)

Gruß Assertor

Carlo91 2. Aug 2008 15:49

Re: idhttp login
 
Hi,
hab nicht viel zeit aber guck mal hier: http://www.delphi-forum.de/viewtopic...uelervz#512988

MfG Carlo

meama 2. Aug 2008 21:55

Re: idhttp login
 
@assertor: vielen dank. es ist nur leider ein neues problem aufgetreten, er sagt er konnte keine verbindung zu ssl aufbauen....einstellungsproblem?
erlaubnis anfrage beim support von schülervz läuft.
edit: hast sogar recht :wink:
auszug aus den agbs:
Zitat:

9.1 Elektronische Angriffe jeglicher Art auf die Plattform / die Datenbank / das Netzwerk von schülerVZ oder auf einzelne Nutzer sind strikt untersagt. Jeder elektronische Angriff führt zum sofortigen Ausschluß des Nutzers und wird, soweit möglich, zivil- und strafrechtlich verfolgt.

9.2 Als elektronische Angriffe gelten insbesondere, ohne daß diese Aufzählung abschließend wäre:

* Hacking-Versuche, d.h. Versuche, die Sicherheitsbarrieren von schülerVZ zu überwinden, zu umgehen, oder auf sonstige Art außer Kraft zu setzen
* Einsatz von Computerprogrammen zum automatischen Auslesen von Daten wie z.B. Crawlern (alias Spider oder Robot, kurz: Bot)
* das vorsätzliche Anwenden und/oder Verbreiten von Viren, Würmern, Trojanern
* Verwendung von Links, Programmen oder sonstigen Verfahren, die die Plattform / die Datenbank / das Netzwerk von schülerVZ oder einzelne Nutzer schädigen können oder sollen
* brute force attacks
* massenweises spamming

@carlo91: hab mir deinen lösungsvorschlag gedownloadet, beim kompilieren sagt er aber, dass in der procedure vom einloggen button das posEX ein unidentifizierter bezeichner ist. weißt du warum, ich meine bei dir wird es ja wohl geklappt haben oder?

geskill 3. Aug 2008 09:28

Re: idhttp login
 
Ich habe mal ein Beispiel, für IdHTTP + SSL + Cookies
und bitte benutzt keine Stringlist zum Posten da wird aus dem "+" ein Leerzeichen " "
etc. Sonderzeichen... Immer schön "TIdMultiPartFormDataStream" benutzen.

Hinweis: Wenn du die Indy10 Komponenten benutzt musst du noch
was abändern, ich habe es schon wieder vergessen was es war...
Findest du aber hier im Forum. Du merkst es daran wenn eine Fehlermeldung
von wegen Timeout Fehler kommt.

Delphi-Quellcode:
uses IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
     IdHTTP, IdIOHandler, IdIOHandlerSocket, IdIOHandlerStack, IdSSL, IdSSLOpenSSL,
     IdMultipartFormData, IdCookieManager;

// [...]

PROCEDURE Login(LoginName,LoginPassword:String);
VAR IdHTTP:TIdHTTP; Params:TIdMultiPartFormDataStream;
    IdSSLIOHandlerSocketOpenSSL:TIdSSLIOHandlerSocketOpenSSL;
    IdCookieManager:TIdCookieManager; GetList:TStringList;

BEGIN
  IdHTTP := TIdHTTP.Create(NIL);
  GetList := TStringList.Create;
  IdCookieManager := TIdCookieManager.Create(NIL);
  IdSSLIOHandlerSocketOpenSSL := TIdSSLIOHandlerSocketOpenSSL.Create(NIL);
  Params := TIdMultiPartFormDataStream.Create;
  TRY
    IdSSLIOHandlerSocketOpenSSL.SSLOptions.Method := sslvSSLv23;
    IdSSLIOHandlerSocketOpenSSL.SSLOptions.Mode := sslmUnassigned;
    IdHTTP.IOHandler := IdSSLIOHandlerSocketOpenSSL;
    IdHTTP.CookieManager := IdCookieManager; // Cookies man kann ja nie wissen
    IdHTTP.AllowCookies := TRUE;

    Params.AddFormField('username', UTF8Encode(LoginName)); // UTF8Encode - kommt auf die Seite an meistens nicht!
    Params.AddFormField('password', UTF8Encode(LoginPassword));

    GetList.Text := IdHTTP.Post('', Params);

    // Login auswerten ob login geklappt hat z.b. von RS
    IF NOT (Pos('The Account has been found, but the password is incorrect.',GetList.Text) = 0)
      THEN BEGIN
        ShowMessage('The Account has been found, but the password is incorrect.');
        Exit;
      END;


    // wenn man noch eine Unterseite ansteuern möchte
    FreeAndNil(Params); // die Postparameterliste löschen
    Params := TIdMultiPartFormDataStream.Create;

    // Seite wechseln etc.

  FINALLY // Freigeben
    FreeAndNil(Params);
    IdSSLIOHandlerSocketOpenSSL.Free;
    IdCookieManager.Free;
    GetList.Free;
    IdHTTP.Free;
  END;
END;
Du benötigst im Ordner die "libeay32.dll" und "ssleay32.dll" DLL.
Grüße

dominikkv 3. Aug 2008 11:04

Re: idhttp login
 
Zitat:

Zitat von meama
das posEX ein unidentifizierter bezeichner ist

Wird wohl an deiner Delphiversion liegen... welche hast du?
Bau dir die Funktion doch einfach nach, Beispiele wirst du sicherlich hier in der DP finden

meama 6. Aug 2008 08:07

Re: idhttp login
 
okay leute die sache hat sich erledigt, hab keine genehmigung von schülervz gekriegt.
ich habe sogar nen "guten" rat bekommen
Zitat:

wenn du was illegales tun möchtest dann geh ne zigarette rauchen, wenn du daei erwischt wirst ist das nicht so teuer!
kann man die deswegen verklagen, weiß das zufällig jemand? ist ja anstiftung zu einer straftat.......
ich glaube die diskussion ginge jetzt etwas am thema vorbei, deshalb

CLOSED


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:38 Uhr.
Seite 1 von 2  1 2      

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