здравствуйте
пытаюсь выдрать вот этот текст
97 - 18 = ?
с этого HTML кода
Код HTML:
<td valign="top" width="100%">
div><strong><label for="humanverify">97 - 18 = ?</label></strong></div>
<input class="bginput" name="humanverify[input]" id="humanverify" size="50" type="text">
<input id="hash" name="humanverify[hash]" value="c9b711fa049ca03441d6b7701525f3f6" type="hidden">
</td>
с помощью такой функции
Код:
function TForm5.WB_GetHTMLCode: Boolean;//получаю код страницы
var ps: IPersistStreamInit;
ss: TStringStream;
sa: IStream;
s: string;
Load:TStringList;
begin
try
Load:=TStringList.Create;
ps := WebBrowser1.Document as IPersistStreamInit;
s := '';
ss := TStringStream.Create(s);
try
sa := TStreamAdapter.Create(ss, soReference) as IStream;
Result := Succeeded(ps.Save(sa, True));
if Result then
Load.Add(ss.Datastring);
browserHTML:=Load.Text;
Load.Clear;
Load.free;
finally
ss.Free;
end;
except
end;
end;
procedure TForm5.Button5Click(Sender: TObject);//вытягиваю текст:)
var s:string;
begin
WB_GetHTMLCode;
s:=browserHTML;
s:=StringReplace(s, #13, '',[rfReplaceAll]);
s:=StringReplace(s, #10, '',[rfReplaceAll]);
delete(s,1,pos('<div><strong><label for="humanverify">',s)+37);
delete(s,pos('= ?</label></strong></div>',s),
length(s)-pos('= ?</label></strong></div>',s)+1);
memo1.Text:=s;
end;
но почему то не работает, когда с помощью этого кода парсю строку то выкидывает то что мне нужно, а HTML код парсит не хочет, кто знает в чём дело помогите)