PDA

Просмотр полной версии : [Помогите!] ошибки при работе с прокси


*Хalyava*
27.12.2011, 12:04
написал программу.
при вводе в нее прокси она их чекает на валидные\невалидные.
мне нужно чтобы при попадании невалидных прокси в memo выводилась ошибка (например проблема сети, 400 Request и т.д.)
не знаю как это реализовать. помогите.

делаю так:

resp1:=[Ссылки могут видеть только зарегистрированные и активированные пользователи]('[Ссылки могут видеть только зарегистрированные и активированные пользователи]');

RegExpr.Expression := '<title>(.*?)</title>';
if RegExpr.Exec(resp1) then
form1.Memo1.Lines.Add(Utf8ToAnsi(RegExpr.Match[1]+'--'+ip));

но здесь программа парстить title ТОЛЬКО валидные прокси (не знаю почему).

Mebius
27.12.2011, 14:22
написал программу.
при вводе в нее прокси она их чекает на валидные\невалидные.
мне нужно чтобы при попадании невалидных прокси в memo выводилась ошибка (например проблема сети, 400 Request и т.д.)
не знаю как это реализовать. помогите.

делаю так:

resp1:=[Ссылки могут видеть только зарегистрированные и активированные пользователи]('[Ссылки могут видеть только зарегистрированные и активированные пользователи]');

RegExpr.Expression := '<title>(.*?)</title>';
if RegExpr.Exec(resp1) then
form1.Memo1.Lines.Add(Utf8ToAnsi(RegExpr.Match[1]+'--'+ip));

но здесь программа парстить title ТОЛЬКО валидные прокси (не знаю почему).

юзай синапс имхо, а вообще раз уже две темы где был бы полезен мой сорц ща заползу на свой домашний резервник и попробую вам найти сорц моего прокси чекера на инди+многопоточность

upd:
PChecker.rar ([Ссылки могут видеть только зарегистрированные и активированные пользователи]) исходник моего прокси чекера с менеджером потоков

*Хalyava*
27.12.2011, 18:33
нее это немного не то что мне нужно))

мне надо чтобы при попадании невалидного прокси программа записывала номер ошибки.
для этого как я полагаю нужно парсить страницу.
я делаю это но ничего не получается.((

procedure TMyTr.Execute;
var
s,resp,resp1,resp2, ip, port:string;
cw,i:integer;
regexpr:TRegExpr;
begin
regexpr:=TRegExpr.Create;
[Ссылки могут видеть только зарегистрированные и активированные пользователи](nil);
cw:=getnumberproxy;
while cw<form1.ListBox1.Items.Count do
begin
s:=form1.ListBox1.Items[cw];
i := Pos(':',s);

IP := Copy(s,1,i-1);
PORT := Copy(s,i+1,Length(s));




[Ссылки могут видеть только зарегистрированные и активированные пользователи]
[Ссылки могут видеть только зарегистрированные и активированные пользователи](port);
// [Ссылки могут видеть только зарегистрированные и активированные пользователи]*1000;


resp1:=[Ссылки могут видеть только зарегистрированные и активированные пользователи]('[Ссылки могут видеть только зарегистрированные и активированные пользователи]');
RegExpr.Expression := '<title>(.*?)</title>';
if RegExpr.Exec(resp1) then
form1.Memo1.Lines.Add(Utf8ToAnsi(RegExpr.Match[1]+'--'+ip))
else
Form1.ListBox3.Items.Add(Utf8ToAnsi(RegExpr.Match[1]+'--'+ip));




cw:=getnumberproxy;
checked:=checked+1;


[Ссылки могут видеть только зарегистрированные и активированные пользователи]
RegExpr.Free;

end;
end;



вот собственно код чекера прокси и парса странички.

Добавлено через 1 час 15 минут
проблема решена.
кому интересно вот:
try
resp1:=[Ссылки могут видеть только зарегистрированные и активированные пользователи]('[Ссылки могут видеть только зарегистрированные и активированные пользователи]');
RegExpr.Expression := '<title>(.*?)</title>';
if RegExpr.Exec(resp1) then
form1.Memo1.Lines.Add(Utf8ToAnsi(RegExpr.Match[1]+'--'+ip+':'+port));
except
on E : Exception do
form1.ListBox3.Items.Add(E.ClassName+'-|- Поднята ошибка, с сообщением : '+E.Message+'--'+ip+':'+port);
end;