IE打开一个网页后,我要做一个程序,能获得IE内的网页的指定的内容(如:一个文本框的内容),要怎么做、? 
因为我要这个程序自动监视IE里网页内容的变化。
注意:不是在我的程序内打开网页,网页是在IE内打开,我的程序是要监视网页内的变化。

解决方案 »

  1.   

    你要的不是监测IE,而是监测互联网上传输的数据,HTTP协议会有他自己的头和尾,你监听数据,把内容截下来,按HTTP协议分析,就可以了如果是网页已经LOAD下来,就不能监了,因为用户打字进IE里面,没有提交的话,网页内容是不会变的,变的也只是内存中的数据
      

  2.   

    枚举IE的子窗体,得到Internet Explorer_Server的句柄,调用ObjectFromLresult函数得到Document对象objDocument,就可以操纵叶面上的元素了。比如:  For j = 0 To objDocument.All.tags("input").Length - 1
         debug.print  CStr(objDocument.All.tags("input")(j).Value)
               
    Next j
      

  3.   

    http://www.applevb.com/qa/qa000257.htm
    http://www.applevb.com/qa/qa000250.htm
      

  4.   

    ztesoft(中兴软创 创造未来) 的方法可行,请问你调用ObjectFromLresult函数得到Document对象objDocument怎么做?有没有ObjectFromLresult函数的例子,或说明。?
      

  5.   

    http://my.6to23.com/vcroadweb/document/code/netware/GetIhtml.htm
      

  6.   

    那是VC的方法,有没有VB的?因为VB是不用指针的?
    我在VB里的找不到ObjectFromLresult这个函数,VB里可能不是用这个函数。。?
      

  7.   

    你不需要枚举IE窗口阿,通过下面的方法就可以获得所有的IE窗口对象的实例了:http://www.applevb.com/qa/qa000252.htm
      

  8.   

    请问如何取得当前运行的ie的标题(存放到字符串中)。
    以及如何关闭当前的ie.
    首先在工程中加入对Microsoft Internet Controls的引用
    代码:
        Dim WithEvents objIEMain As WebBrowser_V1
        Dim objIE As Object
        Dim dWinFolder As New ShellWindows
        Dim objDoc As Object
        
        For Each objIE In dWinFolder
            List1.AddItem objIE.Document.Title
            List2.AddItem objIE.LocationURL
        Next
    就可以在List1中列出所有IE文档的标题了。  下面是关闭其中一个窗口的代码:
    If InStr(objIE.Document.Title, "Apple") Then                
        objIE.Quit
    End If
    -------------------------------------Dim WithEvents objIEMain As WebBrowser_V1中的WebBrowser_V1是什么意思?
      

  9.   

    sorry Dim WithEvents objIEMain As WebBrowser_V1不需要
    上面的代码是遍历当前打开的IE窗口,获得的objIE对象是一个InternetExplorer对象。
      

  10.   

    试试看引用 Microsoft InterNet Controls 与 Microsoft HTML Object Library 这两个对象。接下来:Option ExplicitDim SWs As New SHDocVw.ShellWindows
    Dim IE As SHDocVw.InternetExplorer
    Dim Doc As ObjectPrivate Sub Command1_Click()
        On Error Resume Next
        For Each IE In SWs
            Set Doc = IE.Document
            If TypeOf Doc Is HTMLDocument Then
                MsgBox IE.Document.documentElement.innerHTML
            End If
        Next
        Set Doc = Nothing
    End Sub
    后面的代码可以通过IE.Document.documentElement.innerHTML 这里来获得比如下面的代码是获得所有 Input 的 Html 与 Value值Option ExplicitDim SWs As New SHDocVw.ShellWindows
    Dim IE As SHDocVw.InternetExplorer
    Dim Doc As ObjectPrivate Sub Command1_Click()
        On Error Resume Next
        Dim i As Integer
        For Each IE In SWs
            Set Doc = IE.Document
            If TypeOf Doc Is HTMLDocument Then
                Debug.Print IE.Document.All.tags("input").length
                If IE.Document.All.tags("input").length <> 0 Then
                    For i = 0 To IE.Document.All.tags("input").length - 1
                        Debug.Print IE.Document.All.tags("input").Item(i).Value
                        Debug.Print IE.Document.All.tags("input").Item(i).outerHTML
                    Next
                End If
            End If
        Next
        Set Doc = Nothing
    End Sub