MSHTML是微软公司的一个COM组件该组件封装了HTML语言中的所有元素及其属性通过其提供的标准接口可以访问指定网页的所有元素.MSHTML对象模型是由一些对象和集合组成的.处于根部的是HTML描述了打开页面的个窗口包括一系列集合和对象如Frames集合HistoryLocationNavigatorDocumentVi—sumEvent对象等.其中描述呈现在客户窗口实际网页的是Document对象由一系列的属性方法对象和集合组成.其中All集合中包含网页中所有标记(Tag)元素其主要的方法和属性有
()Length(长度)即标记出现的个数可以把标记的集合理解为从开始的一维数组其次序按照标记在网页位置排列
()Tags(标记)用于过滤出给定标记的集合如Doc.Al.Tags(P)得到所有分段标记P
()Item(项目)用于选择集合中的某个元素如object.item()得到集合的第个元素而object.item(i)得到第i+个元素.
此外IHTMLElement也是个常用的集合对象代表网页中指定标记的集合通过这个集合对象可以得到网页上特定标记的内容.IHTMLElement有个主要属性
()InnerText开始标记和结束标记之间的文本
()InnerHTML开始标记和结束标记之间的文本和HTML
()OuterText对象的文本
()OuterHTML对象的文本和HTML.
procedure TForm
Button
Click(Sender: TObject);
var
Doc:IHTMLDocument;
input:OleVariant;
userinputelementpwdinputelement:ihtmlinputelement;
begin
doc:=webbrowserdocument as ihtmldocument;
userinputelement:=(docallitem(user(也就是网页中用户名控件的名字)) as ihtmlinputelement);
userinputelementvalue:=edittext;(也就是你要向网页输入的东西)
pwdinputelement:=(docallitem(password) as ihtmlinputelement);
pwdinputelementvalue:=edittext;
input:=docallitem(submit);
inputclick;
end;
当提交数据按钮没有NAME属性时采用如下方法
procedure TForm
Button
Click(Sender: TObject);
var
Doc:IHTMLDocument;
form:ithmlformelement;
userinputelementpwdinputelement:ihtmlinputelement;
begin
doc:=webbrowserdocument as ihtmldocument;
userinputelement:=(docallitem(user(也就是网页中用户名控件的名字)) as ihtmlinputelement);
userinputelementvalue:=edittext;(也就是你要向网页输入的东西)
pwdinputelement:=(docallitem(password) as ihtmlinputelement);
pwdinputelement:=edittext;
form:=(docallitem(login_form) as ihtmlformelement):
formsubmit;
end;
登录按钮一般都是网页中默认的回车按钮所以可以用上面代码来代替前面的点击按钮