字符串分析网页源码

在特殊的情况下,我们不能使用TWebBrowser来进行源码的分析,那么我们怎么从String里提取我们需要的链接和文本呢?以下是我查阅网络上的一些方法。

获取网站链接:(此方法获取的链接不是绝对链接,需要自己写个替换)

procedure TForm1.Button1Click(Sender: TObject);
var
  doc:IHTMLDocument2;
  ln:IHTMLAnchorElement;
  i:integer;
  vHTML : OleVariant;
begin
  doc:=CoHTMLDocument.Create as IHTMLDocument2;
  doc.designMode:=ON;
  doc.charset:=UTF-8;
  vHTML := VarArrayCreate([0, 0], varVariant);
  vHTML[0] := strs.text;  //这里strs.text是我事先取得的一个页面的代码
  doc.Write(PSafeArray(TVarData(vHTML).VArray));

  for i:=0 to doc.links.length-1 do begin
    if SUCCEEDED(doc.links.item(i,0).QueryInterface(IHTMLAnchorElement, ln)) then
      memo2.Lines.Add(ln.href);
  end;
  doc.close;
  doc:=nil;
end;

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。