|
#1
|
|||
|
|||
parser ip
Вообщем нужно спарсить ипы 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; ЗЫ Говорил же, могу ошибиться, т.к. на коленке писал. ЗЫЫ Код можно еще упростить, если надо Помогаю за Спасибо |
#7
|
|||
|
|||
Да теперь работает спасибо огромное)))
|