Tester la validité des proxies ?
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 :zoubi:)
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 :roll:
Code:
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; |