域名查询系统用到的类

2019-01-14 07:47:52王振洲

        Call ConnDB()
        For vLoopI = 0 To UBound(vDomainArr)
            vDomainsName = LCase(vDomainArr(vLoopI))
            If Instr(vDomainsName, ".") > 0 Then
                vDomainMainBody = Split(vDomainsName, ".")(0)
                Conn.Execute("INSERT INTO [CNDomainList](DomainName, Body, Length, ComposeType, TLD) VALUES('" & vDomainsName & "', '" & vDomainMainBody & "', " & Len(vDomainMainBody) & ", " & GetDomainComposeType(vDomainMainBody) & ", " & GetDomainLTD(vDomainsName) & ")") 
            End If
        Next
        Call DisconnDB()
        Call CompactDataBase(vDatabasePath, False)
    End Function

    Public Function ClearUpDatabase()
        Call ConnDB()
        Conn.Execute("DELETE * FROM [CNDomainList]")
        Call DisconnDB()
        Call CompactDataBase(vDatabasePath, False)
    End Function

    Private Function GetDomainComposeType(DomainName)
        If Cmd.IsAlpha(DomainName) Then
            GetDomainComposeType=1
        ElseIf Cmd.IsDigit(DomainName) Then
            GetDomainComposeType=2
        ElseIf Cmd.IsAlphaDigit(DomainName) Then
            GetDomainComposeType=3
        Else
            GetDomainComposeType=4
        End If
    End Function

    Private Function GetDomainLTD(DomainName)
        If UBound(Split(DomainName, ".")) > 1 Then
            Select Case Split(DomainName, ".")(1)
                Case "com"
                    TLDCode = 10011
                Case "net"
                    TLDCode = 10021
                Case "org"
                    TLDCode = 10051
                Case "gov"
                    TLDCode = 10061
                Case "ac"
                    TLDCode = 10071
                Case Else
                    TLDCode = 10041
            End Select
        Else
            TLDCode = 10001
        End If
        GetDomainLTD = TLDCode
    End Function