Delphi TWebBrowser[6] 获取网页所有链接(元素)

Posted 滔 Roy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Delphi TWebBrowser[6] 获取网页所有链接(元素)相关的知识,希望对你有一定的参考价值。

Delphi TWebBrowser[6] 获取网页所有链接(元素)及GetElementByID返回值的有效性判定方法

1、获取网页所有链接

var
  elem: IhtmlElement;
  coll: IHTMLElementCollection;
  i: integer;
  url, title: string;
begin
  coll := (WebBrowser1.Document as IHTMLDocument2).all;
  coll := (coll.tags(‘a‘) as IHTMLElementCollection);
  for i := 0 to coll.Length - 1 do
  begin //   循环取出每个链接
    elem := (coll.item(i, 0) as IHTMLElement);
    url := Trim(string(elem.getAttribute(WideString(‘href‘), 0)));
    title := elem.innerText;
    ShowMessage(Format(‘链接标题:%s,链接网址:%s‘, [title, url]));
  end;
end;

其他元素的获取,方法类似

2、 GetElementByID返回值有效性判定方法

var
  aElement: OleVariant;
begin
  aElement := WebBrowser1.OleObject.Document.GetElementByID(‘btnLogin‘);
  if IDispatch(aElement) <> nil then //对返回值进行有效性检查
  begin
    aElement.value := ‘登录按钮‘;
    aElement.click;
  end;
end;

  

 

 

创建时间:2020.11.23  更新时间:  

以上是关于Delphi TWebBrowser[6] 获取网页所有链接(元素)的主要内容,如果未能解决你的问题,请参考以下文章

从 Delphi 10.3 中的 TWebBrowser OnNavigateError 中提取 StatusCode

如何在 Delphi 10.3.3 中访问 TWebBrowser.Document 时克服内存泄漏

Delphi:在 TWebBrowser 中显示 PDF

delphi中的webbrowser ,如何获取网站返回状态码

如何在 TWebBrowser IDispatchEvent 中获取自定义事件参数

使用delphi在Android下的TWebbrowser中全屏观看youtube或其他视频时出现问题