为什么这段代码不能提取下面这个链接? ( 积分: 100 )

  • 主题发起人 主题发起人 eaglepsm
  • 开始时间 开始时间
E

eaglepsm

Unregistered / Unconfirmed
GUEST, unregistred user!
“网页测试”这个链接可以提取,“网页辅助”链接就不行
c:/test.html
<html>
<head>
<title>test</title>
</head>
<body>
<a href=http://download.csdn.net/sort/tag/%E7%BD%91%E9%A1%B5%E8%BE%85%E5%8A%A9>网页辅助</a>|</p>
<a href=http://download.csdn.net/sort/tag/网页测试>网页测试</a>|</p>
</body>
</html>
代码如下:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, SHDocVw, StdCtrls,MSHTML;

type
TForm1 = class(TForm)
Button1: TButton;
WebBrowser1: TWebBrowser;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
Var
doc:IHTMLDocument2;
all:IHTMLElementCollection;
len,I:integer;
item:OleVariant;
begin
memo1.Clear;
doc:=WebBrowser1 .Document as IHTMLDocument2;
all:=doc.Get_links; //doc.Links亦可
len:=all.length;
for I:=0 to len-1 do begin
item:=all.item(I,varempty); //EmpryParam亦可
memo1.lines.add(item.href);
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
WebBrowser1.Navigate('c:/test.html');
end;

end.
 
var
iDoc: IHtmlDocument2;
i: integer;
ov: OleVariant;
iDisp: IDispatch;
iColl: IHTMLElementCollection;
InputImage: HTMLInputImage;
form:HTMLFormElement;
hlink:HTMLLinkElement;
begin
WebBrowser1.ControlInterface.Document.QueryInterface(IHtmlDocument2, iDoc);
if not Assigned(iDoc) then
begin
Exit;
end;


ov :='a';
iDisp := iDoc.all.tags(ov);
if Assigned(IDisp) then
begin
IDisp.QueryInterface(IHTMLElementCollection, iColl);
if Assigned(iColl) then
begin
for i := 1 to iColl.Get_length do
begin
iDisp := iColl.item(pred(i), 0);
iDisp.QueryInterface(HTMLLinkElement, hlink);
if Assigned(hlink) then
begin
hlink.click;
end;
end;
end;

end;


end;
 
感谢回复,正在研究。
 
找出來了沒。
 
怎样获得链接的文本呢?
 
恕我愚笨,还是没找出来
 

------------------------------------------------------
http://www.waibaoinfo.com 外包信息网
 
正则表达式
 
正则表达式?
 
接受答案了.
 
后退
顶部