J'essaye d'obtenir ma liste instagram "suivante" en utilisant seulement le composant http. J'ai essayé d'utiliser lHTTP.Get('https://www.instagram.com/Myusername/following/');
mais il n'y a aucun nom d'utilisateur dans le code HTML déchiffré. Cependant, j'ai vu des gars l'utiliser sans instagram API, juste une réponse http dans VB.Net. J'utilise Delphi 10.Comment faire pour obtenir Instagram suivre la liste en utilisant le composant http dans Delphi 10
MISE À JOUR
procedure TForm1.Button4Click(Sender: TObject);
var
lHTTP: TIdHTTP;
IdSSL: TIdSSLIOHandlerSocketOpenSSL;
Params, login : TStrings;
Reply, Token, X: string;
Cookie: TIdCookie;
begin
try
Params := TStringList.Create;
Params.Add('username=' + Edit1.Text);
Params.Add('password=' + Edit2.Text);
lHTTP := TIdHTTP.Create(nil);
try
IdSSL := TIdSSLIOHandlerSocketOpenSSL.Create(lHTTP);
IdSSL.SSLOptions.Method := sslvTLSv1;
IdSSL.SSLOptions.Mode := sslmClient;
lHTTP.IOHandler := IdSSL;
lHTTP.ReadTimeout := 30000;
lHTTP.HandleRedirects := True;
lHTTP.Request.UserAgent := 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.76 Mobile Safari/537.36';
lHTTP.Get('https://www.instagram.com', TStream(nil));
Cookie := lHTTP.CookieManager.CookieCollection.Cookie['csrftoken', 'www.instagram.com'];
if Cookie <> nil then
Token := Cookie.Value;
try
lHTTP.Request.CustomHeaders.Values['X-CSRFToken'] := Token;
lHTTP.Request.CustomHeaders.Values['X-Instagram-AJAX'] := '1';
lHTTP.Request.CustomHeaders.Values['X-Requested-With'] := 'XMLHttpRequest';
lHTTP.Request.Referer := 'https://www.instagram.com/';
lHTTP.Request.ContentType := 'application/x-www-form-urlencoded';
lHTTP.Request.UserAgent := 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.76 Mobile Safari/537.36';
Reply := lHTTP.Post('https://www.instagram.com/accounts/login/ajax/', Params);
finally
end;
finally
end;
Finally
lHTTP.Request.UserAgent := 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.76 Mobile Safari/537.36';
lHTTP.Get('https://www.instagram.com/myusername/following/', TStream(nil));
Memo1.Lines.Add(Reply);
Finally
end;
end;
end;
Tout ce que vous pouvez avec HTTP dans VB.Net, vous pouvez faire avec 'TIdHTTP' dans Delphi. S'il vous plaît montrer le code que vous avez essayé qui ne fonctionne pas pour vous. Ce n'est pas différent de votre [autre numéro Instagram] (http://stackoverflow.com/questions/37951677/). –
ouais, j'ai d'abord essayé de me connecter puis j'ai reçu le jeton d'accès, puis j'ai utilisé 'lHTTP.Get ('https://www.instagram.com/Myusername/');' pour obtenir le jeton d'accès. Enfin obtenir le 'lHTTP.Get ('https://www.instagram.com/Myusername/following/');' mais il n'y a pas de noms d'utilisateur dans le HTML déchiffré, je ne pense pas que ce soit la bonne méthode @RemyLebeau – ColdZer0
si vous voulez aide ici, vous devez montrer le code que vous avez essayé. Tout ce que vous pouvez faire dans un navigateur web peut être fait avec 'TIdHTTP' avec le bon code, donc il vous manque quelque chose. –