Bonjour,

Est-ce que quelqu'un aurait un code fiable permettant de vérifier si un proxy fonctionne bien ? (si il y a moyen de tester son "niveau" - transparent, anonyme, etc. -, c'est encore mieux )

J'utilise Synapse, et j'ai écrit ce code à la va-vite mais il me retourne que tous mes proxies sont ok donc je pense qu'il y a une erreur

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
procedure TfrmMain.FormCreate(Sender: TObject);
begin
  slProxies := TStringList.Create;
  slProxies.LoadFromFile('Proxies.txt');
  slProxies.NameValueSeparator := ';';  { Indique que le Host et le Port sont séparés par un point-virgule (;) }
 
  memoAllProxies.Lines.AddStrings(slProxies);
end;
 
procedure TfrmMain.FormDestroy(Sender: TObject);
begin
  slProxies.Clear;
  slProxies.Free;
end;
 
procedure TfrmMain.btnTestProxiesClick(Sender: TObject);
var
  sProxy: string;
  i1: integer;
begin
  with THTTPSend.Create do begin
    try
      for i1 := 0 to slProxies.Count - 1 do begin
        lblProgress.Caption := Format('Test proxy %d/%d', [i1 + 1, slProxies.Count]);
        // UserAgent := HttpUserAgent;
        sProxy := slProxies[i1];
        ProxyHost := slProxies.Names[i1];
        ProxyPort := slProxies.ValueFromIndex[i1];
        if HTTPMethod('GET', 'http://www.google.com') then
          memoValidProxies.Lines.Add(sProxy)
        else
          memoDeadProxies.Lines.Add(sProxy);
      end;
    finally
      Free;
    end;
  end;
  lblProgress.Caption := 'Terminé !';
end;