![]() |
|
|
|
|
#1
|
|||
|
|||
|
Вообщем нужно спарсить ипы cs1.6 серваков, вроде получилось, но только 1, а как сделать последущие ипы, котороые встречаются в html коде незнаю
.http://www.gametracker.com/search/cs...hipp=50#search - адресс ссылки, с которой нужно спарсить ипы. Код: Код:
procedure TForm1.Button1Click(Sender: TObject);
var
s,g:string;
begin
s:=IdHTTP1.Get('http://www.gametracker.com/search/cs/60/?searchipp=50#search');
g:=copy(s,pos('<span class="ip">',s)+length('<span class="ip">'),pos('</span><span class="port">',s)-pos('<span class="ip">',s)-length('<span class="ip">'));
Memo1.Lines.Add(g + ':27015');
Memo1.Lines.Add(g + ':27016');
Memo1.Lines.Add(g + ':27017');
end;
end.Помогите пожалуйста. |
|
#2
|
||||
|
||||
|
Код:
uses StrUtils;
var
buf: Integer;
...
buf := pos('<span class="ip">',s);
While(buf > 0) do begin
g:=copy(s,pos('<span class="ip">',s)+length('<span class="ip">'),pos('</span><span class="port">',s)-pos('<span class="ip">',s)-length('<span class="ip">'));
Memo1.Lines.Add(g + ':27015');
Memo1.Lines.Add(g + ':27016');
Memo1.Lines.Add(g + ':27017');
buf := PosEx('<span class="ip">',s, buf+1);
end;Последний раз редактировалось v1s2222, 18.03.2011 в 21:36. |
|
#3
|
|||
|
|||
|
Цитата:
Что-то не компилирует ![]() |
|
#4
|
||||
|
||||
|
Код:
USES STRUTILS; //!
procedure TForm1.Button1Click(Sender: TObject);
var
s,g:string;
buf: integer;
begin
s:=IdHTTP1.Get('http://www.gametracker.com/search/cs/60/?searchipp=50#search');
buf := pos('<span class="ip">',s);
While(buf > 0) do begin
g:=copy(s,buf+length('<span class="ip">'),pos('</span><span class="port">',s)-buf-length('<span class="ip">'));
Memo1.Lines.Add(g + ':27015');
Memo1.Lines.Add(g + ':27016');
Memo1.Lines.Add(g + ':27017');
buf := PosEx('<span class="ip">',s, buf+1);
end;
end;Последний раз редактировалось v1s2222, 18.03.2011 в 22:07. |
|
#5
|
|||
|
|||
|
Всё разобрался, спсибо)), но почемуто те ипы которые идут в html после этого 89.237.28.20, не появляются.
Последний раз редактировалось dmitry123, 18.03.2011 в 22:15. |
|
#6
|
||||
|
||||
|
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
s,g:string;
buf: integer;
x: integer;
begin
s:=IdHTTP1.Get('http://www.gametracker.com/search/cs/60/?searchipp=50#search');
buf := pos('<span class="ip">',s);
x := pos('</span><span class="port">', s);
While(buf > 0) and (x > 0) do begin
g := Copy(s, buf+length('<span class="ip">'), x-buf-length('<span class="ip">'));
Memo1.Lines.Add(g + ':27015');
Memo1.Lines.Add(g + ':27016');
Memo1.Lines.Add(g + ':27017');
buf := PosEx('<span class="ip">',s, buf+1);
x := posEx('</span><span class="port">', s, x+1);
end;
end;ЗЫ Говорил же, могу ошибиться, т.к. на коленке писал. ЗЫЫ Код можно еще упростить, если надо ![]() |