使用vb发送用户名和密码进行网站登陆
但是怎么判断是否登陆成功呢?

解决方案 »

  1.   

    提交后确实登陆了。但是现在是不知道怎么得到登陆后的页面内容啊。
    我用的webborow来实现的。看见页面了。但是在提交后怎么判断是否已经登陆了呢?
    如果要分析得到的网页,要什么时候怎么读取新的页面内容呢?
      

  2.   

    Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
    'MsgBox WebBrowser1.Document.body.innertext
    If InStr(1, WebBrowser1.Document.body.innertext, "成功") <> 0 Then
      MsgBox "OK成功登陆"
    End If
    End Sub
      

  3.   

    http://www.csdn.net/Develop/read_article.asp?id=28374
    http://www.csdn.net/Develop/read_article.asp?id=28375
    http://www.csdn.net/Develop/read_article.asp?id=28376
    http://www.csdn.net/Develop/read_article.asp?id=28377这是我写的,好好看看~你用webb登陆的话是不需要你考虑跳转页面的地址问题的!因为webb差不多跟IE一样,可以自动跳转的!!
      

  4.   

    是的,确实自动跳转到新的页面了。我是需要用程序来确认是否登陆成功
    而不是要自己用眼睛去确认啊。
    我使用的是这个方法修改的
    Private Sub Command1_Click()
        WebBrowser1.Navigate "http://chen/chat/newuser.htm"
    End SubPrivate Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
        Dim vDoc, vTag
        Dim i As Integer
          
        Set vDoc = WebBrowser1.Document
        List1.Clear
        For i = 0 To vDoc.All.length - 1
            If UCase(vDoc.All(i).tagName) = "INPUT" Then
                Set vTag = vDoc.All(i)
                If vTag.Type = "text" Or vTag.Type = "password" Then
                    List1.AddItem vTag.Name
                    Select Case vTag.Name
                        Case "Name"
                            vTag.Value = "IMGod"
                        Case "NickName"
                            vTag.Value = "IMGod"
                        Case "Password"
                            vTag.Value = "IMGodpass"
                        Case "EMail"
                            vTag.Value = "[email protected]"
                    End Select
                ElseIf vTag.Type = "submit" Then
                    vTag.Click
                End If
            End If
        Next i
    End Sub
    确实登陆成功了。但是怎么用程序代码来判断呢?
      

  5.   

    这个很好解决啊!登陆成功之后肯定是跳转到特定的某页,而不成功则跳转到另外的页面!你可以在Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)End Sub
    这里面分析WebBrowser1.LocationURL的名称!使用字符串函数分析当前地址,便能判断是否登陆成功!!!
      

  6.   

    没有找到分析返回数据的方法
    不过还是解决了
    失败和成功的地址不一样
    通过事件中的url参数进行判断就解决了
    。谢谢各位
    不知道用xml实现怎么解决。
    我发送数据后好像没有成功
    状态值为200的时候就是返回值?
    但是打印出来的内容还是第一个页面的内容啊
      

  7.   

    Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
    'MsgBox WebBrowser1.Document.body.innertext
    If InStr(1, WebBrowser1.Document.body.innertext, "成功") <> 0 Then
      MsgBox "OK成功登陆"
    End If
    End Sub
    想法不错
      

  8.   

    万分感谢!
    不过我使用vb进行编程的时候
    怎么document没有后面的属性呢?比如body
    就是document后面打点都不会提示属性等信息
    但是确实又可以使用比如body等属性
    这是怎么回事呢?