CN109684303B - 通信码归属地查询方法、装置、计算机设备和存储介质 - Google Patents
通信码归属地查询方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109684303B CN109684303B CN201811503622.0A CN201811503622A CN109684303B CN 109684303 B CN109684303 B CN 109684303B CN 201811503622 A CN201811503622 A CN 201811503622A CN 109684303 B CN109684303 B CN 109684303B
- Authority
- CN
- China
- Prior art keywords
- communication code
- candidate
- communication
- code
- file database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 616
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000004590 computer program Methods 0.000 claims description 26
- 230000001174 ascending effect Effects 0.000 claims description 16
- 238000010276 construction Methods 0.000 abstract description 2
- 229910002056 binary alloy Inorganic materials 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 206010043866 Tinea capitis Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Abstract
本申请涉及一种通信码归属地查询方法、装置、计算机设备和存储介质。所述方法包括:获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述多个候选通信码分别具有对应的候选指针;将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通讯码对应的归属地信息。本发明的技术方案,以层状结构加指针定位的构建方式预先构建了一个文件数据库,利用该文件数据库,不仅可提高通信码归属地信息的查询效率,还不受网络质量影响,使查询更加方便快捷。
Description
技术领域
本申请涉及计算机网络技术领域,特别是涉及一种通信码归属地查询方法、装置、计算机设备和存储介质。
背景技术
随着计算机网络技术领域的不断发展,通信码归属地的查询方法也得到了较大改善。
传统的通信码归属地查询方法,是将具有地区鉴别码如:IP地址(InternetProtocol Address)、手机号码等的数据导入到服务器文件数据库或高速缓存(Cache)中,通过通信码的关键字查找方式实现对通信码的归属地查询。
然而,传统的通信码归属地查询方法需要依赖加载工具、缓存服务器等组件的支持,在进行归属地查询工作时,时常会因为网络异常或组件繁忙等因素导致号码归属地的查询时间长或查询异常等情况。
因此,传统的通信码归属地查询方法存在着查询效率低的问题。
发明内容
基于此,有必要针对上述通信码归属地查询方法存在着查询效率低的技术问题,提供一种能够合理解决上述技术问题的通信码归属地查询方法、装置、计算机设备和存储介质。
一种通信码归属地查询方法,所述方法包括:
获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层;
将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层;
在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通讯码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层。
在其中一个实施例中,在所述获取待查询通信码之前,还包括:
获取原始通信码;
当所述原始通信码的数据类型为非设定进制类型时,将所述原始通信码按照设定进制转换,得到所述待查询通信码。
在其中一个实施例中,所述原始通信码为IP地址和/或手机号码。
在其中一个实施例中,所述设定进制为二进制、十进制、十六进制中的任意一种进制。
在其中一个实施例中,所述多个候选通信码按通信码数值顺序排列,所述将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,包括:
若所述多个候选通信码为升序排列,则将所述待查询通信码与所述多个候选通信码进行升序比较;
当所述待查询通信码大于或等于第一候选通信码,且所述待查询通信码小于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
在其中一个实施例中,所述多个候选通信码按通信码数值顺序排列,所述将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,还包括:
若所述多个候选通信码为降序排列,则将所述待查询通信码与所述多个候选通信码进行降序比较;
当所述待查询通信码小于所述第一候选通信码,且所述待查询通信码大于或等于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
在其中一个实施例中,所述文件数据库的第四层包括有所述文件数据库的作者信息和/或版本信息;所述文件数据库的第三层包括有所述归属地信息;所述文件数据库的第二层包括有所述通信码候选范围和归属地信息指针;所述归属地信息指针为构建所述第三层时生成、所述地址信息对应的指针;所述文件数据库的第一层包括有所述候选通信码和候选指针;所述候选通信码为所述通信码候选范围的初始通信码;所述候选指针为构建所述第二层时生成、所述通信码候选范围对应的指针。
一种通信码归属地查询装置,所述装置包括:
通信码获取模块,用于获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层;
通信码确定模块,用于将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层;
归属地查询模块,用于在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通讯码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层;
将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层;
在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通讯码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层;
将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层;
在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通讯码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层。
上述通信码归属地查询方法、装置、计算机设备和存储介质,通过读取一个预设的文件数据库,利用该文件数据库的层状结构,以及各层中候选通信码对应的指针,即可查询到待查询通信码的归属地信息,大大缩短了通信码归属地查询的时间。同时,通过一个预先建立的文件数据库,使得通信码归属地的查询无需网络支撑即可实现,不受网络质量影响,大大提高了通信码归属地的查询效率。
附图说明
图1为一个实施例中通信码归属地查询方法的流程示意图;
图2为一个实施例中通信码归属地查询方法中一个具体示例的流程示意图;
图3为一个实施例中通信码归属地查询装置的结构框图;
图4为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图2所示,提供了一种通信码归属地查询方法,包括以下步骤:
步骤S110,获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层。
其中,文件数据库是本发明预先构建的一个数据库,文件数据库的构建方式主要采用了字节位移的压缩方式,将源数据文件压缩成具有四个部分的文件数据库,该文件数据库相对源数据文件占用内存空间小,且不同于传统源数据文件在查询过程中依赖加载工具和缓存服务器,而仅依赖于软件开发工具包。本发明构建的文件数据库基于单文件形式,具有易部署、易迁移、易维护等特点。
其中,候选通信码是指文件数据库中已存在的、用于提供待查询通信码进行匹配的通信码,候选通信码的选取取决于现有的通信码总数量,即将现有的通信码按一定数量划分后,存在有多个通信码范围段,则每段通信码范围的段起始通信码或段结束通信码即可作为候选通信码,例如,手机号13200001111、字符型的IP地址1.0.0.0,或整形IP地址16777216等。
其中,待查询通信码是指与文件数据库中候选通信码进制类型一致的通信码,若候选通信码的进制类型为二进制,则待查询通信码的进制类型也需要是二进制,例如,手机号13200001111、十进制IP地址16777216等。
具体实现中,在查询通行码归属地前,首先要读取文件数据库,将该文件加载到计算机内存中,之后,获取待查询通信码,此时的待查询通信码与文件数据库第一层中候选通信码的进制类型一致。并且,文件数据库第一层中包括有两大部分,其中一部分用于放置大量通信码的起始通信码和结束通信码,该部分占用内存仅为8字节,可用于判断待查询通信码是否为存在于文件数据库中的可查询范围;另一部分放置有多个候选通信码及其对应的候选指针,该候选通信码为建立文件数据库第二层时,在通信码范围段中提取的段起始通信码,或段结束通信码,并将段起始或段结束通信码的所在位置生成一个指针,放置于第一层中,待通过第一层中的候选通信码定位到第二层中的通信码范围段。
例如,以IP地址归属地查询为例,获取到的待查询通信码为“16777216”,多个候选通信码包括有“16777216”、“16777472”、“16778240”等。“16777216”为IP地址“1.0.0.0”的十进制数,“16777216”占用内存8字节,而“1.0.0.0”占用内存20个字节。若文件数据库中存储的是IP地址的十进制数,则既可查询IP地址的归属地,又可减小文件数据库的内存大小。此外,每个候选通信码具有唯一的一个候选指针,每个候选指针能够定向标识对应通信码范围段的所在位置。
步骤S120,将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层。
其中,目标通信码是指多个候选通信码中,与待查询通信码相匹配的通信码例如,十进制IP地址16777216等。
其中,目标指针是指目标通信码对应的指针。
其中,通信码候选范围是指文件数据库第二层中的通信码范围,在文件数据库的第二层中,存在有以划分好的多个通信码范围,通过第一层中指针的确定,即可定位到第二层中的一个通信码候选范围,例如,IP地址范围“00000000~10000000”。
具体实现中,获取到待查询通信码后,首先将待查询通信码作为源数据,与文件数据库中第一层的多个候选通信码进行匹配,此时的多个候选通信码具有一定的排列顺序,待查询通信码可根据候选通讯码的排序规则查找到与之匹配的一个候选通信码,作为目标通信码。由于每个头癣通信码具有一个对应的候选指针,因此,查找到与待查询通信码相匹配的目标通信码后,将通过该目标通信码对应存在的指针,进一步定位到文件数据库第二层的通信码候选范围。
需要说明的是,此时目标通信码的指针,指向第二层中一个唯一的通信码候选范围,该通信码候选范围包括有多个通信码,并且,该通信码候选范围中的通信码具有相同的地址信息。
此外,在对待查询通信码进行匹配前,还可以利用文件数据库第一层中第一部分包括的起始通信码和结束通信码,判断待查询通信码是否有误,或是否被包含于文件数据库中、可正常查询归属地信息。
例如,获取到的待查询通信码为“10000000”,文件数据库第一层中的第一个候选通信码为“00000000”,第二个候选通信码为“10000001”,则可判断“10000000”在第一个候选通信码“00000000”与第二个候选通信码“10000001”之间,此时可确定目标通信码即为第一个候选通信码“00000000”。
进一步地,确定目标通信码为“00000000”后,通过查询器对应的指针P,即可定位到文件数据库第二层中的第一个通信码候选范围“00000000~10000000”。
步骤S130,在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通讯码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层。
其中,实际查询通信码是指与待查询通信码相匹配的通信码,例如,10000000。
其中,地址信息是指文件数据库第三层中,与第二层中多个通信码候选范围具有对应关系的信息,该地址信息可以包括有国家、省份、地区、运行商等信息,例如,中国、福建、福州、电信。
其中,归属地信息是指与待查询通信码具有对应关系的、可通过文件数据库中进行匹配得到的地址信息,例如,中国、福建、福州、电信。
具体实现中,确定了文件数据库第二层中的通信码候选范围后,可进一步在该通信码候选范围中,确定一个与待查询通信码匹配的实际查询通信码,则与该实际查询通信码存在对应关系的、设置于文件数据库第三层中的地址信息,即为待查询通信码的归属地信息。
例如,待查询通信码为“10000000”,通信码候选范围“00000000~10000000”,通信码候选范围“00000000~10000000”附属指针对应指向的地址信息为“中国、福建、福州、电信”,则待查询通信码“10000000”的归属地信息即为“中国、福建、福州、电信”。
需要说明的是,本发明提出的通信码归属地查询方法,是基于本发明预设的一个文件数据库提出,该文件数据库无需依赖于加载工具或缓存服务器,仅用服务器内容即可实现本地查找,且还可以单文件形式任意移植到多个服务器,不仅占用内存空间小,其文件结构还能提高通信码归属地的查询效率。
上述通信码归属地查询方法中,通过读取一个预设的文件数据库,利用该文件数据库的层状结构,以及各层中候选通信码对应的指针,即可查询到待查询通信码的归属地信息,大大缩短了通信码归属地查询的时间。同时,通过一个预先建立的文件数据库,使得通信码归属地的查询无需网络支撑即可实现,不受网络质量影响,大大提高了通信码归属地的查询效率。
在一个实施例中,在所述步骤S110之前,还包括:
获取原始通信码;当所述原始通信码的数据类型为非设定进制类型时,将所述原始通信码按照设定进制转换,得到所述待查询通信码。
其中,原始通信码是指一般性具有地区信息的通信码,例如,手机号码13200001111、IP地址1.0.0.255。
其中,设定进制类型是指十进制、二进制、十六进制等,例如,作为原始通信码的IP地址1.0.0.255,转换为十进制是16777471,转换为十六进制是10000FF,转换为二进制是10000000000000000011111111。
具体实现中,设定进制可以是十进制,即文件数据库中的候选通信码均为十进制数,若需查询用户输入的原始通信码,则必须将原始通信码转换为与候选通信码同进制类型的字符,进而可进入通信码匹配阶段。
例如,文件数据库中存储的候选通信码为十进制数,若用户输入一个IP地址为“1.0.0.255”,则转换成十进制数为“16777471”,此时十进制的IP地址“16777471”,进而可在文件数据库中利用“16777471”完成归属地查询的相关步骤。
在一个实施例中,所述原始通信码为IP地址和/或手机号码。
其中,IP地址是IP协议提供的一种同一的地址格式,它为每一台主机分配一个逻辑地址,每个IP地址都有对应的归属地。
具体实现中,采用本发明提供的方法,可以查询IP地址的归属地信息,也可以查询手机号码或其他通信号码的归属地信息。
例如,用户输入的手机号“13200001111”,或IP地址“1.0.0.255”均可作为原始通信码查询到其归属地信息。
在一个实施例中,所述设定进制为二进制、十进制、十六进制中的任意一种进制。
具体实现中,原始通信码是否为设定进制,取决于文件数据库中用于匹配的候选通信码是几进制类型的字符串。需要说明的是,本发明提供的通信码归属地查询方法是基于本发明提供的一种预设文件数据库所提出,即该文件数据库为本发明提出的方法提供应用环境的支持,而本发明提供的一种预设文件数据库,具有内存占用空间小等特点,因此,相对字符型的数据,十进制型的数据或二进制型的数据占用内存空间更少,则设定进制可以是二进制、十进制、十六进制中的任意一种进制。
例如,字符型IP地址“10.10.10.8”占用20个字节,但转换成十进制后未“168430088”,此时存储空间仅占用8个字节,大大减小了文件数据库的内存占用空间。
在一个实施例中,包括如上第一至四任意一项实施例所述的方法,所述多个候选通信码按通信码数值顺序排列,所述步骤S120,包括:
若所述多个候选通信码为升序排列,则将所述待查询通信码与所述多个候选通信码进行升序比较;当所述待查询通信码大于或等于第一候选通信码,且所述待查询通信码小于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
其中,第一候选通信码是指当前与待查询通信码进行比较的候选通信码,例如,16777216。
其中,第二候选通信码是指排序位于第一候选通信码后一项的通信码,例如,16777472。
具体实现中,若文件数据库中第一层的候选通信码为升序排列,则表示文件数据库中第二层的通信码候选范围同样为升序排列,此时,将所述待查询通信码与所述多个候选通信码进行比较,即先比较候选通信码中通信码数值较小的项,进而比较通信码数值较大的项。因此,要判断待查询通信码对应所在通信码候选范围的具体位置,可通过判断待查询通信码与当前比较的候选通信码的比较结果确定。可以理解的是,文件数据库中的通信码此时为升序排列,文件数据库第二层中包括有大量通信码候选范围,每段通信码范围的段起始通信码即为第一层中的候选通信码,相当于通信码范围起始的标识。因此,当待查询通信码大于或等于第一候选通信码,且待查询通信码小于第二候选通信码时,可判断出待查询通信码位于第一候选通信码标识对应的通信码候选范围,则此时可确定第一候选通信码即为所述目标通信码。
例如,待查询通信码为“10000000”,候选通信码中包括有第一候选通信码“00000000”、第二候选通行码“10000001”,则此时可判断待查询通信码位于“00000000”与“10000001”之间,由于第二候选通信码是作为一个通信码候选范围的起始通信码,则可确定目标通信码为第一候选通信码“00000000”。
在一个实施例中,所述步骤S120,还包括:
若所述多个候选通信码为降序排列,则将所述待查询通信码与所述多个候选通信码进行降序比较;当所述待查询通信码小于所述第一候选通信码,且所述待查询通信码大于或等于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
具体实现中,本实施例的实现方式与上一实施例的不同处在于:文件数据库中通信码的排序方式,由于上一实施例中的通信码排序方式为升序,而本实施例中的通信码为降序排列,则当待查询通信码小于第一候选通信码,且待查询通信码大于或等于第二候选通信码时,可确定第二候选通信码为目标通信码。
例如,待查询通信码为“99999900”,候选通信码中包括有第一候选通信码“99999999”、第二候选通行码“99999899”,则此时可判断待查询通信码位于“99999899”与“99999999”之间,由于第二候选通信码是作为一个通信码候选范围的起始通信码,该范围中的通信码数值均小于“99999899”,则可确定目标通信码为第一候选通信码“99999999”。
在一个实施例中,所述文件数据库的第四层包括有所述文件数据库的作者信息和/或版本信息;所述文件数据库的第三层包括有所述归属地信息;所述文件数据库的第二层包括有所述通信码候选范围和归属地信息指针;所述归属地信息指针为构建所述第三层时生成、所述地址信息对应的指针;所述文件数据库的第一层包括有所述候选通信码和候选指针;所述候选通信码为所述通信码候选范围的初始通信码;所述候选指针为构建所述第二层时生成、所述通信码候选范围对应的指针。
其中,作者信息是指构建文件数据库的作者的信息,例如,“Create By Sean”。
其中,版本信息是指文件数据库的版本标识号,每一个操作系统或每一个软件都有一个版本号。版本号能使用户了解所使用的操作系统是否为最新的版本以及它所提供的功能与设施,例如,“IP Data Version 1.2.0”。
具体实现中,本发明提供一种文件数据库,该文件数据库的建立采用字符串进制转换与指针拼接的方式构建,该文件数据库主要包括有四层信息,该文件数据库的构建采用反向树状结构的建立方式得到,即获取源数据文件后,首先生成文件数据库第三层部分,第三层部分存储有源数据文件中的地址信息;然后,获取具有相同地址信息的通信码形成通信码范围段,每个通信码范围段对应有一个地址指针,该地址指针指向第三层地址信息所在文件位置,多个通信码范围段及其相应地址指针组成文件数据库第二层部分;进而,提取第二层部分中每个通信码范围段的段起始通信码,并将该段起始通信码所述文件位置生成一个指针,将段起始通信码与其对应的指针进行拼接,组成文件数据库第一层部分;最后,生成文件数据库第四层部分,用于存储该文件数据库的作者信息以及版本信息。
需要说明的是,本发明提供的文件数据库采用字节位移的压缩方式减小文件内存空间,即采用字符串进制转换的方式压缩内存空间,继而利用指针定位查询的方案,提升文件数据库的路径追踪效率。基于该文件数据库的提供,采用本发明提出的通信码归属地查询方法,可大幅度提高归属地查询效率,并且无需依赖加载工具或缓存服务器,不受网络质量影响,查询方法更加便利,降低了查询成本。
根据本发明实施例提供的方案,基于一个预先构建的文件数据库,并利用该文件数据库的层状结构,可快速查询到如IP地址或手机号码等通信码的归属地信息,不受网络质量影响,提供了更加方便快捷的归属地查询方式。此外,由于该文件数据库采用单文件形式构建,移植性好,为本发明提出的归属地查询方案提供了适应性更广泛的应用环境。
为了便于本领域技术人员深入理解本发明实施例,以下将结合图1说明一个具体示例。图2是一个实施例中通信码归属地查询方法中一个具体示例的流程示意图。从图中可见,服务器获取到待查询通信码后,首先放置于文件数据库中的第一层201,在第一层201中首先判断待查询通信码是否被包含于起始通信码和结束通信码之间,以此判断待查询通信码的归属地信息是否可正常查询。若得到判断结果为待查询通信码符合条件,则进一步与第一层201中的多个候选通信码进行比较。此时,若待查询通信码为“10000020”,可确定第一层201中的目标通信码为“10000001”,根据“[指针2]”可定位到第二层202中的一个通信码候选范围“10000001~10000600”,并根据“[指针b]”查询到第三层203中的“归属地2”。由此,查询通信码“10000020”的归属地信息为“归属地2”。
需要说明的是,第四层204用于放置文件数据库的作者信息和/或版本信息,该作者信息和/或版本信息用于标识文件数据库的来源,以及版本号。
应该理解的是,虽然图1和图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1和图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图3所示,提供了一种通信码归属地查询装置,包括:通信码获取模块310、通信码确定模块320、归属地查询模块330,其中:
通信码获取模块310,用于获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层;
通信码确定模块320,用于将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层;
归属地查询模块330,用于在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通讯码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层。
根据本发明实施例提供的方案,通过读取一个预设的文件数据库,利用该文件数据库的层状结构,以及各层中候选通信码对应的指针,即可查询到待查询通信码的归属地信息,大大缩短了通信码归属地查询的时间。同时,通过一个预先建立的文件数据库,使得通信码归属地的查询无需网络支撑即可实现,不受网络质量影响,大大提高了通信码归属地的查询效率。
在一个实施例中,所述通信码获取模块310包括:
原始通信码获取子模块,用于获取原始通信码;进制转换子模块,用于当所述原始通信码的数据类型为非设定进制类型时,将所述原始通信码按照设定进制转换,得到所述待查询通信码。
在一个实施例中,所述原始通信码为IP地址和/或手机号码。
在一个实施例中,所述设定进制为二进制、十进制、十六进制中的任意一种进制。
在一个实施例中,所述多个候选通信码按通信码数值顺序排列,所述通信码确定模块320包括:
通信码比较子模块,用于若所述多个候选通信码为升序排列,则将所述待查询通信码与所述多个候选通信码进行升序比较;目标通信码确定子模块,用于当所述待查询通信码大于或等于第一候选通信码,且所述待查询通信码小于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
在一个实施例中,所述通信码确定模块320还包括:
通信码比较子模块,用于若所述多个候选通信码为降序排列,则将所述待查询通信码与所述多个候选通信码进行降序比较;目标通信码确定子模块,用于当所述待查询通信码小于所述第一候选通信码,且所述待查询通信码大于或等于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
在一个实施例中,所述文件数据库的第四层包括有所述文件数据库的作者信息和/或版本信息;所述文件数据库的第三层包括有所述归属地信息;所述文件数据库的第二层包括有所述通信码候选范围和归属地信息指针;所述归属地信息指针为构建所述第三层时生成、所述地址信息对应的指针;所述文件数据库的第一层包括有所述候选通信码和候选指针;所述候选通信码为所述通信码候选范围的初始通信码;所述候选指针为构建所述第二层时生成、所述通信码候选范围对应的指针。
根据本发明实施例提供的方案,基于一个预先构建的文件数据库,并利用该文件数据库的层状结构,可快速查询到如IP地址或手机号码等通信码的归属地信息,不受网络质量影响,提供了更加方便快捷的归属地查询方式。此外,由于该文件数据库采用单文件形式构建,移植性好,为本发明提出的归属地查询方案提供了适应性更广泛的应用环境。
关于通信码归属地查询装置的具体限定可以参见上文中对于通信码归属地查询方法的限定,在此不再赘述。上述通信码归属地查询装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储第三方通讯设备的账户信息。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种通信码归属地查询方法。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层;
将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层;
在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通讯码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取原始通信码;当所述原始通信码的数据类型为非设定进制类型时,将所述原始通信码按照设定进制转换,得到所述待查询通信码。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述原始通信码为IP地址和/或手机号码。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述设定进制为二进制、十进制、十六进制中的任意一种进制。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若所述多个候选通信码为升序排列,则将所述待查询通信码与所述多个候选通信码进行升序比较;当所述待查询通信码大于或等于第一候选通信码,且所述待查询通信码小于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若所述多个候选通信码为降序排列,则将所述待查询通信码与所述多个候选通信码进行降序比较;当所述待查询通信码小于所述第一候选通信码,且所述待查询通信码大于或等于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
所述文件数据库的第四层包括有所述文件数据库的作者信息和/或版本信息;所述文件数据库的第三层包括有所述归属地信息;所述文件数据库的第二层包括有所述通信码候选范围和归属地信息指针;所述归属地信息指针为构建所述第三层时生成、所述地址信息对应的指针;所述文件数据库的第一层包括有所述候选通信码和候选指针;所述候选通信码为所述通信码候选范围的初始通信码;所述候选指针为构建所述第二层时生成、所述通信码候选范围对应的指针。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层;
将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层;
在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通讯码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取原始通信码;当所述原始通信码的数据类型为非设定进制类型时,将所述原始通信码按照设定进制转换,得到所述待查询通信码。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述原始通信码为IP地址和/或手机号码。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述设定进制为二进制、十进制、十六进制中的任意一种进制。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若所述多个候选通信码为升序排列,则将所述待查询通信码与所述多个候选通信码进行升序比较;当所述待查询通信码大于或等于第一候选通信码,且所述待查询通信码小于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若所述多个候选通信码为降序排列,则将所述待查询通信码与所述多个候选通信码进行降序比较;当所述待查询通信码小于所述第一候选通信码,且所述待查询通信码大于或等于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述文件数据库的第四层包括有所述文件数据库的作者信息和/或版本信息;所述文件数据库的第三层包括有所述归属地信息;所述文件数据库的第二层包括有所述通信码候选范围和归属地信息指针;所述归属地信息指针为构建所述第三层时生成、所述地址信息对应的指针;所述文件数据库的第一层包括有所述候选通信码和候选指针;所述候选通信码为所述通信码候选范围的初始通信码;所述候选指针为构建所述第二层时生成、所述通信码候选范围对应的指针。
本领域普通技术人员可以理解实现上述实施例方法中的全部或层流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、文件数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种通信码归属地查询方法,其特征在于,包括如下步骤:
获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层;所述文件数据库的第一层包括有所述候选通信码和候选指针;
将所述待查询通信码与具有候选指针的所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层;所述文件数据库的第二层包括有所述通信码候选范围和归属地信息指针;
在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通信码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层;所述文件数据库的第三层包括有所述归属地信息;
所述文件数据库的第四层包括有所述文件数据库的作者信息和/或版本信息。
2.根据权利要求1所述的方法,其特征在于,在所述获取待查询通信码之前,还包括:
获取原始通信码;
当所述原始通信码的数据类型为非设定进制类型时,将所述原始通信码按照设定进制转换,得到所述待查询通信码。
3.根据权利要求2所述的方法,其特征在于,所述原始通信码为IP地址和/或手机号码。
4.根据权利要求2所述的方法,其特征在于,所述设定进制为二进制、十进制、十六进制中的任意一种进制。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述多个候选通信码按通信码数值顺序排列,所述将所述待查询通信码与所述多个候选通信码进行匹配,确定目标通信码,包括:
若所述多个候选通信码为升序排列,则将所述待查询通信码与所述多个候选通信码进行升序比较;
当所述待查询通信码大于或等于第一候选通信码,且所述待查询通信码小于第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
6.根据权利要求5所述的方法,其特征在于,还包括:
若所述多个候选通信码为降序排列,则将所述待查询通信码与所述多个候选通信码进行降序比较;
当所述待查询通信码小于所述第一候选通信码,且所述待查询通信码大于或等于所述第二候选通信码时,确定所述第一候选通信码,作为所述目标通信码。
7.根据权利要求1所述的方法,其特征在于,所述归属地信息指针为构建所述第三层时生成所述地址信息对应的指针;所述候选通信码为所述通信码候选范围的初始通信码;所述候选指针为构建所述第二层时生成所述通信码候选范围对应的指针。
8.一种通信码归属地查询装置,其特征在于,所述装置包括:
通信码获取模块,用于获取待查询通信码,以及,获取预设的文件数据库中的多个候选通信码;所述文件数据库包括四层;所述多个候选通信码分别具有对应的候选指针;所述多个候选通信码及其对应的候选指针设置于所述文件数据库的第一层;所述文件数据库的第一层包括有所述候选通信码和候选指针;
通信码确定模块,用于将所述待查询通信码与具有候选指针的所述多个候选通信码进行匹配,确定目标通信码,并根据所述目标通信码对应的目标指针,确定通信码候选范围;所述通信码候选范围设置于所述文件数据库的第二层;所述文件数据库的第二层包括有所述通信码候选范围和归属地信息指针;
归属地查询模块,用于在所述通信码候选范围中,确定实际查询通信码,以及,确定所述实际查询通信码对应的地址信息,作为所述待查询通信码对应的归属地信息;所述地址信息设置于所述文件数据库的第三层;所述文件数据库的第三层包括有所述归属地信息;
所述文件数据库的第四层包括有所述文件数据库的作者信息和/或版本信息。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811503622.0A CN109684303B (zh) | 2018-12-10 | 2018-12-10 | 通信码归属地查询方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811503622.0A CN109684303B (zh) | 2018-12-10 | 2018-12-10 | 通信码归属地查询方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109684303A CN109684303A (zh) | 2019-04-26 |
CN109684303B true CN109684303B (zh) | 2020-10-27 |
Family
ID=66187169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811503622.0A Active CN109684303B (zh) | 2018-12-10 | 2018-12-10 | 通信码归属地查询方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109684303B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110392124B (zh) * | 2019-06-11 | 2022-04-08 | 广州视源电子科技股份有限公司 | 电子设备的通讯码的生成方法、装置、系统以及电子设备 |
CN111629081B (zh) * | 2020-05-28 | 2023-07-28 | 腾讯科技(深圳)有限公司 | 互联网协议ip地址数据处理方法、装置及电子设备 |
CN112257822A (zh) * | 2020-10-22 | 2021-01-22 | 广州文冲船厂有限责任公司 | 一种打码机打码方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010149032A1 (zh) * | 2009-12-24 | 2010-12-29 | 中兴通讯股份有限公司 | 移动终端及号码归属地的查询方法 |
CN103617205A (zh) * | 2013-11-15 | 2014-03-05 | 北京奇虎科技有限公司 | 一种识别ip地址的区域归属地信息的方法和装置 |
CN104780235A (zh) * | 2014-01-14 | 2015-07-15 | 腾讯科技(深圳)有限公司 | Ip归属地查询方法、装置和服务器 |
CN107613039A (zh) * | 2017-09-19 | 2018-01-19 | 北京小米移动软件有限公司 | Ip地址归属地查询方法、装置、系统及存储介质 |
CN107807976A (zh) * | 2017-10-25 | 2018-03-16 | 世纪龙信息网络有限责任公司 | Ip归属地查询方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101163256A (zh) * | 2006-10-13 | 2008-04-16 | 英华达(上海)电子有限公司 | 一种显示手机号码归属地的方法及装置 |
-
2018
- 2018-12-10 CN CN201811503622.0A patent/CN109684303B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010149032A1 (zh) * | 2009-12-24 | 2010-12-29 | 中兴通讯股份有限公司 | 移动终端及号码归属地的查询方法 |
CN103617205A (zh) * | 2013-11-15 | 2014-03-05 | 北京奇虎科技有限公司 | 一种识别ip地址的区域归属地信息的方法和装置 |
CN104780235A (zh) * | 2014-01-14 | 2015-07-15 | 腾讯科技(深圳)有限公司 | Ip归属地查询方法、装置和服务器 |
CN107613039A (zh) * | 2017-09-19 | 2018-01-19 | 北京小米移动软件有限公司 | Ip地址归属地查询方法、装置、系统及存储介质 |
CN107807976A (zh) * | 2017-10-25 | 2018-03-16 | 世纪龙信息网络有限责任公司 | Ip归属地查询方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109684303A (zh) | 2019-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109474578B (zh) | 报文消息校验方法、装置、计算机设备和存储介质 | |
CN108255958B (zh) | 数据查询方法、装置和存储介质 | |
CN109684303B (zh) | 通信码归属地查询方法、装置、计算机设备和存储介质 | |
CN108427684B (zh) | 数据查询方法、装置及计算设备 | |
CN109271391B (zh) | 数据存储方法、服务器、存储介质及装置 | |
JP7090972B2 (ja) | データ処理方法、装置、コンピュータ機器、及びコンピュータプログラム | |
CN111061678B (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
CN109086456B (zh) | 数据索引方法及装置 | |
CN111683066A (zh) | 异构系统集成方法、装置、计算机设备和存储介质 | |
CN112954073B (zh) | 服务提供方法、装置、设备及系统 | |
CN111177121A (zh) | 订单数据反馈方法、装置、计算机设备及存储介质 | |
CN108154024B (zh) | 一种数据检索方法、装置及电子设备 | |
CN111083054B (zh) | 路由配置处理方法、装置、计算机设备和存储介质 | |
CN109218131B (zh) | 网络监控方法、装置、计算机设备和存储介质 | |
CN108389124B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111866197B (zh) | 一种域名解析方法及系统 | |
CN110209717B (zh) | 基础数据库的封装方法、装置、计算机设备和存储介质 | |
CN111666257A (zh) | 一种文件分片存储的方法、装置、设备和存储介质 | |
CN116578746A (zh) | 对象去重方法及装置 | |
CN110647336A (zh) | 灰度发布方法、装置、计算机设备和存储介质 | |
CN111078139B (zh) | 一种实现s3标准对象存储接口的方法及装置 | |
CN110990427A (zh) | 一种应用程序所属区域统计方法、系统及存储介质 | |
CN111368146A (zh) | 一种路径信息的查询方法及装置、存储介质和处理器 | |
CN115905120B (zh) | 档案文件管理方法、装置、计算机设备和存储介质 | |
US11445036B1 (en) | Cluster management method and apparatus, electronic device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20231017 Address after: Room 1423, No. 1256 and 1258, Wanrong Road, Jing'an District, Shanghai 200040 Patentee after: Tianyi Digital Life Technology Co.,Ltd. Address before: 1 / F and 2 / F, East Garden, Huatian International Plaza, 211 Longkou Middle Road, Tianhe District, Guangzhou, Guangdong 510630 Patentee before: Century Dragon Information Network Co.,Ltd. |
|
TR01 | Transfer of patent right |