数据推送方法和装置
技术领域
本发明涉及计算机领域,具体而言,涉及一种数据推送方法和装置。
背景技术
随着网络的快速发展,网络已经逐渐成为人们获取信息的主要渠道,因而,企业对自身产品在互联网上的影响力分析也开始越来越重视。其中,由于很多企业在营销过程中会针对不同年龄段的用户群体做出不同的营销策略,因此,针对不同年龄段推送与用户年龄相适应的信息就变得尤为重要,进一步,如何通过互联网获取用户年龄就成为一个迫切需要解决的问题。
目前,通过互联网来获取用户的年龄信息的常用方式是通过爬虫程序来获得包含用户个人信息的用户数据,从中直接解析出用户年龄。然而,随着用户对于个人信息安全意识的不断提高,大部分用户选择不公开自己的敏感信息,其中就包括年龄、生日等,这样就会使得由于无法准确获知用户年龄,导致无法为用户准确推送符合用户喜好的数据。以微博为例,由于已公开个人生日或年龄信息的用户在整个微博用户群体中占比较小,基础数据量不足以反应整个微博群体的状况,从而导致在为用户推送数据时,不能根据用户的不同年龄准确推送符合用户喜好的数据。
针对相关技术中的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种数据推送方法和装置,以解决由于采用现有的数据推送方式所导致的数据推送不准确的技术问题。
根据本发明的一个方面,提供了一种数据推送方法,包括:获取第一客户端的注册信息,其中,上述第一客户端的注册信息用于标识已注册的第一用户;判断上述第一客户端的注册信息中是否包括用于指示上述第一用户的年龄的目标信息;若判断出上述第一客户端的注册信息中包括上述目标信息,则根据上述目标信息计算上述第一用户的年龄;推送与上述第一用户的年龄相匹配的数据。
可选地,上述判断上述第一客户端的注册信息中是否包括用于指示上述第一用户的年龄的目标信息包括:判断上述第一客户端的注册信息中是否包括第一指示信息及第二指示信息,其中,上述第一指示信息用于指示上述第一用户的入学时间,上述第二指示信息用于指示上述第一用户的入职时间;上述若判断出上述第一客户端的注册信息中包括上述目标信息,则根据上述目标信息计算上述第一用户的年龄包括:若判断出上述第一客户端的注册信息中包括上述第一指示信息及上述第二指示信息,则执行以下步骤:根据上述第一指示信息计算上述第一用户的第一年龄值;根据上述第二指示信息计算上述第一用户的第二年龄值;利用上述第一年龄值和/或上述第二年龄值计算上述第一用户的年龄。
可选地,上述根据上述第一指示信息计算上述第一用户的第一年龄值包括:通过以下公式计算上述第一年龄值:其中,上述A1用于标识上述第一年龄值,上述T用于标识当前时间,上述ti用于标识上述第一指示信息所指示的上述第一用户第i段入学经历的入学时间,上述xi用于标识上述第一用户在上述第i段入学经历的入学时间时的预设年龄,上述n用于标识上述第一指示信息所指示的上述第一用户的n段入学经历。
可选地,上述根据上述第二指示信息计算上述第一用户的第二年龄值包括:通过以下公式计算上述第二年龄值:A2=T-tw+xw,其中,上述A2用于标识上述第二年龄值,上述T用于标识当前时间,上述tw用于标识上述第二指示信息所指示的上述第一用户第一段就职经历的入职时间,上述xw用于标识上述第一用户在上述第一段就职经历的入职时间时的预设年龄。
可选地,在上述获取第一客户端的注册信息时,还包括:获取与上述第一客户端关联的多个第二客户端的注册信息;从上述多个第二客户端的注册信息中获取与上述多个第二客户端对应的多个第二用户的年龄;对上述多个第二用户的年龄按照不同年龄大小统计人数,并将统计人数最多的年龄作为第三年龄值;至少利用上述第三年龄值计算上述第一用户的年龄。
可选地,上述至少利用上述第三年龄值计算上述第一用户的年龄包括以下至少之一:将上述第三年龄值作为上述第一用户的年龄;利用上述第三年龄值与上述第一年龄值计算上述第一用户的年龄;利用上述第三年龄值与上述第二年龄值计算上述第一用户的年龄;利用上述第三年龄值与上述第一年龄值和上述第二年龄值计算上述第一用户的年龄。
可选地,上述推送与上述第一用户的年龄相匹配的数据包括:获取与上述第一用户的年龄相匹配的上述数据;将上述数据推送给上述第一用户所在的上述第一客户端。
根据本发明的另一方面,提供了一种数据推送装置,包括:第一获取单元,用于获取第一客户端的注册信息,其中,上述第一客户端的注册信息用于标识已注册的第一用户;判断单元,用于判断上述第一客户端的注册信息中是否包括用于指示上述第一用户的年龄的目标信息;第一计算单元,用于在判断出上述第一客户端的注册信息中包括上述目标信息时,根据上述目标信息计算上述第一用户的年龄;推送单元,用于推送与上述第一用户的年龄相匹配的数据。
可选地,上述判断单元包括:判断模块,用于判断上述第一客户端的注册信息中是否包括第一指示信息及第二指示信息,其中,上述第一指示信息用于指示上述第一用户的入学时间,上述第二指示信息用于指示上述第一用户的入职时间;上述第一计算单元包括:第一计算模块,用于在判断出上述第一客户端的注册信息中包括上述第一指示信息及上述第二指示信息时,通过以下模块实现根据上述目标信息计算上述第一用户的年龄:第一计算子模块,用于根据上述第一指示信息计算上述第一用户的第一年龄值;第二计算子模块,用于根据上述第二指示信息计算上述第一用户的第二年龄值;第三计算子模块,用于利用上述第一年龄值和/或上述第二年龄值计算上述第一用户的年龄。
可选地,上述第一计算子模块通过以下步骤实现上述根据上述第一指示信息计算上述第一用户的第一年龄值包括:通过以下公式计算上述第一年龄值:其中,上述A1用于标识上述第一年龄值,上述T用于标识当前时间,上述ti用于标识上述第一指示信息所指示的上述第一用户第i段入学经历的入学时间,上述xi用于标识上述第一用户在上述第i段入学经历的入学时间时的预设年龄,上述n用于标识上述第一指示信息所指示的上述第一用户的n段入学经历。
可选地,上述第二计算子模块通过以下步骤实现上述根据上述第二指示信息计算上述第一用户的第二年龄值包括:通过以下公式计算上述第二年龄值:A2=T-tw+xw,其中,上述A2用于标识上述第二年龄值,上述T用于标识当前时间,上述tw用于标识上述第二指示信息所指示的上述第一用户第一段就职经历的入职时间,上述xw用于标识上述第一用户在上述第一段就职经历的入职时间时的预设年龄。
可选地,上述装置还包括:第二获取单元,用于在上述获取第一客户端的注册信息时,获取与上述第一客户端关联的多个第二客户端的注册信息;第三获取单元,用于从上述多个第二客户端的注册信息中获取与上述多个第二客户端对应的多个第二用户的年龄;统计单元,用于对上述多个第二用户的年龄按照不同年龄大小统计人数,并将统计人数最多的年龄作为第三年龄值;第二计算单元,用于至少利用上述第三年龄值计算上述第一用户的年龄。
可选地,上述第二计算单元包括以下至少之一:第二计算模块,用于将上述第三年龄值作为上述第一用户的年龄;第三计算模块,用于利用上述第三年龄值与上述第一年龄值计算上述第一用户的年龄;第四计算模块,用于利用上述第三年龄值与上述第二年龄值计算上述第一用户的年龄;第五计算模块,用于利用上述第三年龄值与上述第一年龄值和上述第二年龄值计算上述第一用户的年龄。
可选地,上述推送单元包括:第二获取模块,用于获取与上述第一用户的年龄相匹配的上述数据;推送模块,用于将上述数据推送给上述第一用户所在的上述第一客户端。
通过本申请提供的实施例,在获取用于标识第一用户的第一客户端的注册信息之后,从上述注册信息中获取用于指示第一用户的年龄的目标信息,进而根据上述目标信息计算第一用户的年龄,并推送与第一用户的年龄相匹配的数据,从而实现在获取用户的年龄后,针对不同年龄段的用户为其推送准确的数据,不仅便于企业根据用户的年龄制定准确的营销策略,增加收益,而且也提高了用户体验,使用户接收到更符合用户喜好的数据。
进一步,注册信息中没有获取到目标信息后,则根据与第一客户端关联的多个第二客户端的注册信息获取第一用户的年龄,从而实现在缺省第一客户端的注册信息的情况下,利用关联的第二客户端上的用户的年龄推算出第一用户的年龄,进而根据上述得到的年龄为用户推送与用户相关的数据,进而改善用户体验,提高数据推送的效率。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的数据推送方法的流程图;
图2是根据本发明实施例的另一种可选的数据推送方法的流程图;以及
图3是根据本发明实施例的一种可选的数据推送装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
实施例1
根据本发明实施例,提供了一种数据推送方法,如图1所示,该方法包括:
S102,获取第一客户端的注册信息,其中,第一客户端的注册信息用于标识已注册的第一用户;
S104,判断第一客户端的注册信息中是否包括用于指示第一用户的年龄的目标信息;
S106,若判断出第一客户端的注册信息中包括目标信息,则根据目标信息计算第一用户的年龄;
S108,推送与第一用户的年龄相匹配的数据。
可选地,在本实施例中,上述数据推送方法可以但不限于应用于终端上安装的应用客户端的数据推送过程中,其中,上述终端可以包括但不限于以下至少之一:手机、笔记本电脑、平板电脑、PC机,其中,上述客户端可以包括但不限于:微博、微信、新闻应用、社区空间。以微博为例,获取微博用户的注册信息,其中,该注册信息中包括用于标识该用户身份的信息,判断上述信息中是否包括用于指示该用户的年龄的目标信息,假设上述注册信息中包括用于指示该用户的年龄的目标信息,则根据上述目标信息计算该用户的年龄,并向该用户推送与其年龄相匹配的微博数据。上述举例只是一种示例,本实施例对此不作任何限定。
需要说明的是,上述目标信息中可以包括但不限于:用于标识用户年龄的生日信息、用于指示第一用户的入学时间的第一指示信息、用于指示第一用户的入职时间的第二指示信息。若直接从客户端的注册信息中获取到生日信息,则可以直接得到该用户的年龄,无需再进行之后的判断,这样与现有技术提供的方案类似,本实施例在此不再赘述。
可选地,在本实施例中,上述若判断出第一客户端的注册信息中包括目标信息,则根据目标信息计算第一用户的年龄包括但不限于:根据注册信息中的第一指示信息及第二指示信息分别得出两个年龄值,进而再根据预定的权重,对两个年龄值加权求和计算得出第一用户的年龄。
可选地,在本实施例中,若判断出第一客户端的注册信息中不包括目标信息,则获取与第一客户端关联的多个第二客户端的注册信息包括:
S1,若判断出第一客户端的注册信息中不包括目标信息,则获取与第一客户端关联的多个第二客户端的注册信息;
S2,根据多个第二客户端的注册信息获取第一客户端对应的第一用户的年龄。
可选地,在本实施例中,上述多个第二客户端与第一客户端的关联关系可以包括但不限于:单向关联、双向关联,其中,以微博为例,第一用户可以通过关注的方式与多个第二用户形成单向关联,通过获取多个第二用户的年龄,从而实现推算出第一用户的年龄。
进一步,需要说明的是,在本实施例中,在推送数据之前,还需根据计算得到的用户的年龄,获取与用户的年龄相匹配的数据,以微博为例,假设计算得到用户为20岁,则服务器将从网络获取18岁-22岁的用户常关注的话题内容,并将这些内容主动推送上述20岁的用户,从而实现在准确得出用户的年龄后,根据用户的年龄准确推送与用户匹配的数据。
通过本申请提供的实施例,在获取用于标识第一用户的第一客户端的注册信息之后,从上述注册信息中获取用于指示第一用户的年龄的目标信息,进而根据上述目标信息计算第一用户的年龄,并推送与第一用户的年龄相匹配的数据,从而实现在获取用户的年龄后,针对不同年龄段的用户为其推送准确的数据,不仅便于企业根据用户的年龄制定准确的营销策略,增加收益,而且也提高了用户体验,使用户接收到更符合用户喜好的数据,提高了数据推送的效率。
作为一种可选的方案,
S1,判断第一客户端的注册信息中是否包括用于指示第一用户的年龄的目标信息包括:判断第一客户端的注册信息中是否包括第一指示信息及第二指示信息,其中,第一指示信息用于指示第一用户的入学时间,第二指示信息用于指示第一用户的入职时间;
S2,若判断出第一客户端的注册信息中包括目标信息,则根据目标信息计算第一用户的年龄包括:若判断出第一客户端的注册信息中包括第一指示信息及第二指示信息,则执行以下步骤:
S22,根据第一指示信息计算第一用户的第一年龄值;
S24,根据第二指示信息计算第一用户的第二年龄值;
S26,利用第一年龄值和/或第二年龄值计算第一用户的年龄。
需要说明的是,在本实施例中,可以根据入学经历和入职经历中的至少一种指示信息来计算第一用户的年龄。例如,学生的注册信息中将只包括第一指示信息,即入学经历的相关信息,而缺省第二指示信息,则在计算时将把第一指示信息的权重配置为1,将第二指示信息的权重配置为0,进而计算出第一用户的年龄。其中,上述权重的配置可以但不限于根据第一指示信息及第二指示信息的信息完整度决定。
可选地,在本实施例中,上述第一指示信息中可以包括但不限于:多段入学经历的入学时间,例如,初中(2003入学)、高中(2006入学)、大学(2009入学),上述第二指示信息可以包括但不限于:多段就职经历的入职时间,例如,第一份工作(2013年入职),第二份工作(2015年入职)。进一步,在本实施例中,可以但不限于对多段入学经历计算得出的年龄求平均值,以得到第一年龄值。
可选地,在本实施例中,上述预设权重可以包括但不限于:随机配置、根据第一指示信息及第二指示信息的完整度配置。例如,假设第一客户端的注册信息中的第一指示信息的完整度90%,第二指示信息的完整度只有40%,则在配置预设权重时,可以但不限于将第一指示信息的权重配置为70%,将第二指示信息的权重配置为30%,进而利用上述权重及第一年龄值和第二年龄值计算得出第一用户的年龄。例如,第一年龄值为24岁,第二年龄值为23岁,则根据上述预设权重可得第一用户的年龄为:24*70%+23*30%=23.7岁。
通过本申请提供的实施例,通过获取第一客户端注册信息中的第一指示信息及第二指示信息,其中,第一指示信息用于指示第一用户的入学时间,第二指示信息用于指示第一用户的入职时间,利用上述第一指示信息及第二指示信息分别计算出第一年龄值及第二年龄值,进而按照预设权重将第一年龄值及第二年龄值加权求和以得出第一用户的年龄,实现了利用入学时间和入职时间准确获取用户的年龄,从而实现根据不同的年龄段信息,为不同年龄段的用户推送符合用户喜好的数据,达到准确推送数据的效果。
作为一种可选的方案,根据第一指示信息计算第一用户的第一年龄值包括:
S1,通过以下公式计算第一年龄值:
其中,A1用于标识第一年龄值,T用于标识当前时间,ti用于标识第一指示信息所指示的第一用户第i段入学经历的入学时间,xi用于标识第一用户在第i段入学经历的入学时间时的预设年龄,n用于标识第一指示信息所指示的第一用户的n段入学经历。
可选地,在本实施例中,可以利用根据客户端的历史信息计算出的平均值作为上述预设年龄,还可以预先配置相应的数值作为上述预设年龄,本实施例中不仅限于此。
具体结合以下示例进行说明,假设第一客户端(以微博为例)的注册信息中获取到第一指示信息如下:
用户名:用户A
入学经历:初中:2003,高中:2006,大学:2009。
由上述内容可知,用户A在微博上注册的入学经历共三段,假设当前时间为2014年,初中入学时的预设年龄为13岁,高中入学时的预设年龄为16岁,大学入学时的预设年龄为19岁,则利用上述公式(1)可以计算出该用户A的第一年龄值:A1=[(2014-2003+13)+(2014-2006+16)+(2014-2009+19)]/3=24,则可以推算上述第一年龄值为24岁。
通过本申请提供的实施例,通过上述公式(1)根据第一指示信息计算得出第一年龄值,从而实现在无法直接得知用户的年龄时,利用第一指示信息间接计算出用户的年龄值,进一步结合第二年龄值推算出用户较为准确的年龄,从而实现为用户推送符合其年龄段的数据。
作为一种可选的方案,根据第二指示信息计算第一用户的第二年龄值包括:
S1,通过以下公式计算第二年龄值:
A2=T-tw+xw (2)
其中,A2用于标识第二年龄值,T用于标识当前时间,tw用于标识第二指示信息所指示的第一用户第一段就职经历的入职时间,xw用于标识第一用户在第一段就职经历的入职时间时的预设年龄。
可选地,在本实施例中,可以利用根据客户端的历史信息计算出的平均值作为上述预设年龄,还可以预先配置相应的数值作为上述预设年龄,本实施例中不仅限于此。
具体结合以下示例进行说明,假设第一客户端(以微博为例)的注册信息中获取到第二指示信息如下:
用户名:用户A
入职经历:第一份工作:2013年至今
由上述内容可知,用户A在微博上注册的就职经历只有一段,假设当前时间为2014年,第一段就职经历的入职时的年龄为22岁,则利用上述公式(1)可以计算出该用户A的第一年龄值:A2=[(2014-2013+22)=23,则可以推算上述第二年龄值为23岁。
需要说明的是,即使用户A包括多段就职经历,但由于每一段就职的时间跨度并不一致,因而利用多段就职经历计算出的用户A的年龄并不准确,所以在本实施例中优选使用第一段就职经历的入职时间,然而,在本发明中还可包括使用多段就职经历计算用户的年龄,本实施例不仅限于此。
通过本申请提供的实施例,通过上述公式(2)根据第二指示信息计算得出第二年龄值,从而实现在无法直接得知用户的年龄时,利用第二指示信息间接计算出用户的年龄值,进一步结合第一年龄值推算出用户较为准确的年龄,从而实现为用户推送符合其年龄段的数据,以使用户接收到更加符合用户喜好的数据,进一步也便于企业根据不同的年龄制定不同的营销策略,进而提高企业收益。
作为一种可选的方案,在获取第一客户端的注册信息时,还包括:
S1,获取与第一客户端关联的多个第二客户端的注册信息;
S2,从多个第二客户端的注册信息中获取与多个第二客户端对应的多个第二用户的年龄;
S3,对多个第二用户的年龄按照不同年龄大小统计人数,并将统计人数最多的年龄作为第三年龄值;
S4,至少利用第三年龄值计算第一用户的年龄。
可选地,在本实施例中,上述第二客户端与第一客户端之间的关联关系可以包括但不限于以下至少之一:单向关联、多向关联,其中,以微博为例,第二客户端可以是第一客户端关注的用户所对应的客户端,以新闻应用为例,第二客户端可以是第一客户端经常浏览的新闻客户端。
需要说明的是,由于大多数用户通过网络获取数据进行查看时,都会选择同龄人所发布的信息。例如,以微博为例,23岁左右的年轻人由于喜好相同,因而选择关注的大多数也是20岁左右的微博用户。
具体结合以下示例进行说明,以微博为例,假设第一客户端上的用户A关注50个第二客户端,根据多个第二客户端的注册信息获取对应的多个第二用户的年龄,例如,从多个第二客户端的注册信息中获取到50个用户的年龄,其中,15岁的7位,23岁的18位,27岁的12位,30岁的10位,60岁的3位,按照不同年龄的统计人数多少排序,其中,最多的是23岁,共18位,最少的60岁,共3位。因而,经过上述多个第二客户端上的第二用户的年龄,分析推算第三年龄值为23岁,进一步利用第三年龄值来推算第一用户的年龄。
通过本申请提供的实施例,通过获取与第一客户端关联的多个第二客户端的注册信息,进一步按照不同年龄统计人数,将所占人数最多的年龄作为第三年龄值,从而实现利用关联客户端上的第三年龄值推算出第一用户的年龄,进而根据上述得到的年龄为用户推送与用户相关的数据,进而改善用户体验。
作为一种可选的方案,上述至少利用第三年龄值计算第一用户的年龄包括以下至少之一:
1)将第三年龄值作为第一用户的年龄;
2)利用第三年龄值与第一年龄值计算第一用户的年龄;
3)利用第三年龄值与第二年龄值计算第一用户的年龄;
4)利用第三年龄值与第一年龄值和第二年龄值计算第一用户的年龄。
需要说明的是,在本实施例中,利用第三年龄段可以直接作为第一用户的年龄,即使第一客户端关注了一些不是同年龄段的微博用户,但是由于数量也比较少,因而,不会对推算用户的年龄造成影响。进一步,在本实施例中,还可以但不限于利用第三年龄段与第一年龄段和第二年龄段进行组合,进而按照配置的不同权重计算出较为准确的第一用户的年龄。其中,上述第一年龄值与第二年龄值的权重配置可以但不限于根据入学经历及入职经历的信息完整度决定,第三年龄值的权重配置可以但不限于根据需求预先配置。
具体结合以下示例进行描述,假设第一年龄值为24岁,第二年龄值为23岁,第三年龄值为23岁,其中,对上述年龄值配置的权重分别为50%、30%、20%,则可以计算出第一用户的年龄为:24*50%+23*30%+23*20%=23.5岁。
通过本申请提供的实施例,通过将第三年龄值与第一年龄值及第二年龄值的不同组合,从而实现了可以利用多种方式来计算第一用户的年龄。进一步,使得第一用户的年龄计算的更为准确。
作为一种可选的方案,推送与第一用户的年龄相匹配的数据包括:
S1,获取与第一用户的年龄相匹配的数据;
S2,将数据推送给第一用户所在的第一客户端。
可选地,在本实施例中,在获取与第一用户的年龄相匹配的数据之前,还包括:对获取到的所有用户的年龄进行划分,以得到多个不同的年龄段。从而实现针对不同的年龄段统一进行数据推送,其中,上述年龄段可以但不限于根据不同的应用场景划分成不同的跨度,例如,每五岁划为一个年龄段,或者,每3岁划为一个年龄段,从而对属于同一年龄段的用户推送相同或相似的数据,而对不属于同一年龄段的用户则推送不同的数据。以达到根据用户的年龄为用户推送符合用户喜好的数据,使得用户更易接受所推送的数据,达到数据推送的效果。
通过本申请提供的实施例,通过根据用户的年龄先获取与其相匹配的数据,进而将匹配好的数据推送给用户,从而实现将准确的数据推送给相应用户,提高数据推送的效率。
具体结合图2步骤S202-S216所示进行描述,首先,如步骤S202,获取第一客户端发送的注册信息,进一步,判断上述注册信息中是否包括目标信息,如步骤S204,若判断出包括目标信息,则执行步骤S206,否则执行步骤S212。在步骤S206中判断注册信息中是否包括第一用户的生日信息,若判断出包括上述生日信息,则根据上述生日信息直接得出第一用户的年龄,如步骤S216,否则执行步骤S208,判断注册信息中是否包括第一指示信息及第二指示信息,若判断出包括上述第一指示信息及第二指示信息,则执行步骤S210,根据第一指示信息及第二指示信息计算第一用户的年龄,以进入步骤S216。进一步,若判断出上述注册信息中不包括目标信息,则执行步骤S212-S214,获取多个第二客户端的注册信息,并根据上述多个第二客户端的注册信息获取第一用户的年龄。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例2
根据本发明实施例,还提供了一种用于实施上述数据推送方法的数据推送装置,如图3所示,该装置包括:
1)第一获取单元302,用于获取第一客户端的注册信息,其中,第一客户端的注册信息用于标识已注册的第一用户;
2)判断单元304,用于判断第一客户端的注册信息中是否包括用于指示第一用户的年龄的目标信息;
3)第一计算单元306,用于在判断出第一客户端的注册信息中包括目标信息时,根据目标信息计算第一用户的年龄;
4)推送单元308,用于推送与第一用户的年龄相匹配的数据。
可选地,在本实施例中,上述数据推送装置可以但不限于应用于终端上安装的应用客户端的数据推送过程中,其中,上述终端可以包括但不限于以下至少之一:手机、笔记本电脑、平板电脑、PC机,其中,上述客户端可以包括但不限于:微博、微信、新闻应用、社区空间。以微博为例,获取微博用户的注册信息,其中,该注册信息中包括用于标识该用户身份的信息,判断上述信息中是否包括用于指示该用户的年龄的目标信息,假设上述注册信息中包括用于指示该用户的年龄的目标信息,则根据上述目标信息计算该用户的年龄,并向该用户推送与其年龄相匹配的微博数据。上述举例只是一种示例,本实施例对此不作任何限定。
需要说明的是,上述目标信息中可以包括但不限于:用于标识用户年龄的生日信息、用于指示第一用户的入学时间的第一指示信息、用于指示第一用户的入职时间的第二指示信息。若直接从客户端的注册信息中获取到生日信息,则可以直接得到该用户的年龄,无需再进行之后的判断,这样与现有技术提供的方案类似,本实施例在此不再赘述。
可选地,在本实施例中,上述若判断出第一客户端的注册信息中包括目标信息,则根据目标信息计算第一用户的年龄包括但不限于:根据注册信息中的第一指示信息及第二指示信息分别得出两个年龄值,进而再根据预定的权重,对两个年龄值加权求和计算得出第一用户的年龄。
可选地,在本实施例中,若判断出第一客户端的注册信息中不包括目标信息,则获取与第一客户端关联的多个第二客户端的注册信息包括:
S1,若判断出第一客户端的注册信息中不包括目标信息,则获取与第一客户端关联的多个第二客户端的注册信息;
S2,根据多个第二客户端的注册信息获取第一客户端对应的第一用户的年龄。
可选地,在本实施例中,上述多个第二客户端与第一客户端的关联关系可以包括但不限于:单向关联、双向关联,其中,以微博为例,第一用户可以通过关注的方式与多个第二用户形成单向关联,通过获取多个第二用户的年龄,从而实现推算出第一用户的年龄。
进一步,需要说明的是,在本实施例中,在推送数据之前,还需根据计算得到的用户的年龄,获取与用户的年龄相匹配的数据,以微博为例,假设计算得到用户为20岁,则服务器将从网络获取18岁-22岁的用户常关注的话题内容,并将这些内容主动推送上述20岁的用户,从而实现在准确得出用户的年龄后,根据用户的年龄准确推送与用户匹配的数据。
通过本申请提供的实施例,在获取用于标识第一用户的第一客户端的注册信息之后,从上述注册信息中获取用于指示第一用户的年龄的目标信息,进而根据上述目标信息计算第一用户的年龄,并推送与第一用户的年龄相匹配的数据,从而实现在获取用户的年龄后,针对不同年龄段的用户为其推送准确的数据,不仅便于企业根据用户的年龄制定准确的营销策略,增加收益,而且也提高了用户体验,使用户接收到更符合用户喜好的数据,提高了数据推送的效率。
作为一种可选的方案,
1)判断单元304包括:判断模块,用于判断第一客户端的注册信息中是否包括第一指示信息及第二指示信息,其中,第一指示信息用于指示第一用户的入学时间,第二指示信息用于指示第一用户的入职时间;
2)第一计算单元306包括:第一计算模块,用于在判断出第一客户端的注册信息中包括第一指示信息及第二指示信息时,通过以下模块实现根据目标信息计算第一用户的年龄:
(1)第一计算子模块,用于利用第一指示信息计算第一用户的第一年龄值;
(2)第二计算子模块,用于利用第二指示信息计算第一用户的第二年龄值;
(3)第三计算子模块,用于利用第一年龄值和/或第二年龄值计算第一用户的年龄。
需要说明的是,在本实施例中,可以根据入学经历和入职经历中的至少一种指示信息来计算第一用户的年龄。例如,学生的注册信息中将只包括第一指示信息,即入学经历的相关信息,而缺省第二指示信息,则在计算时将把第一指示信息的权重配置为1,将第二指示信息的权重配置为0,进而计算出第一用户的年龄。其中,上述权重的配置可以但不限于根据第一指示信息及第二指示信息的信息完整度决定。
可选地,在本实施例中,上述第一指示信息中可以包括但不限于:多段入学经历的入学时间,例如,初中(2003入学)、高中(2006入学)、大学(2009入学),上述第二指示信息可以包括但不限于:多段就职经历的入职时间,例如,第一份工作(2013年入职),第二份工作(2015年入职)。进一步,在本实施例中,可以但不限于对多段入学经历计算得出的年龄求平均值,以得到第一年龄值。
可选地,在本实施例中,上述预设权重可以包括但不限于:随机配置、根据第一指示信息及第二指示信息的完整度配置。例如,假设第一客户端的注册信息中的第一指示信息的完整度90%,第二指示信息的完整度只有40%,则在配置预设权重时,可以但不限于将第一指示信息的权重配置为70%,将第二指示信息的权重配置为30%,进而利用上述权重及第一年龄值和第二年龄值计算得出第一用户的年龄。例如,第一年龄值为24岁,第二年龄值为23岁,则根据上述预设权重可得第一用户的年龄为:24*70%+23*30%=23.7岁。
通过本申请提供的实施例,通过获取第一客户端注册信息中的第一指示信息及第二指示信息,其中,第一指示信息用于指示第一用户的入学时间,第二指示信息用于指示第一用户的入职时间,利用上述第一指示信息及第二指示信息分别计算出第一年龄值及第二年龄值,进而按照预设权重将第一年龄值及第二年龄值加权求和以得出第一用户的年龄,实现了利用入学时间和入职时间准确获取用户的年龄,从而实现根据不同的年龄段信息,为不同年龄段的用户推送符合用户喜好的数据,达到准确推送数据的效果。
作为一种可选的方案,第一计算子模块通过以下步骤实现根据第一指示信息计算第一用户的第一年龄值包括:
S1,通过以下公式计算第一年龄值:
其中,A1用于标识第一年龄值,T用于标识当前时间,ti用于标识第一指示信息所指示的第一用户第i段入学经历的入学时间,xi用于标识第一用户在第i段入学经历的入学时间时的预设年龄,n用于标识第一指示信息所指示的第一用户的n段入学经历。
可选地,在本实施例中,可以利用根据客户端的历史信息计算出的平均值作为上述预设年龄,还可以预先配置相应的数值作为上述预设年龄,本实施例中不仅限于此。
具体结合以下示例进行说明,假设第一客户端(以微博为例)的注册信息中获取到第一指示信息如下:
用户名:用户A
入学经历:初中:2003,高中:2006,大学:2009。
由上述内容可知,用户A在微博上注册的入学经历共三段,假设当前时间为2014年,初中入学时的预设年龄为13岁,高中入学时的预设年龄为16岁,大学入学时的预设年龄为19岁,则利用上述公式(1)可以计算出该用户A的第一年龄值:A1=[(2014-2003+13)+(2014-2006+16)+(2014-2009+19)]/3=24,则可以推算上述第一年龄值为24岁。
通过本申请提供的实施例,通过上述公式(1)根据第一指示信息计算得出第一年龄值,从而实现在无法直接得知用户的年龄时,利用第一指示信息间接计算出用户的年龄值,进一步结合第二年龄值推算出用户较为准确的年龄,从而实现为用户推送符合其年龄段的数据。
作为一种可选的方案,第二计算子模块通过以下步骤实现根据第二指示信息计算第一用户的第二年龄值包括:
S1,通过以下公式计算第二年龄值:
A2=T-tw+xw (4)
其中,A2用于标识第二年龄值,T用于标识当前时间,tw用于标识第二指示信息所指示的第一用户第一段就职经历的入职时间,xw用于标识第一用户在第一段就职经历的入职时间时的预设年龄。
可选地,在本实施例中,可以利用根据客户端的历史信息计算出的平均值作为上述预设年龄,还可以预先配置相应的数值作为上述预设年龄,本实施例中不仅限于此。
具体结合以下示例进行说明,假设第一客户端(以微博为例)的注册信息中获取到第二指示信息如下:
用户名:用户A
入职经历:第一份工作:2013年至今
由上述内容可知,用户A在微博上注册的就职经历只有一段,假设当前时间为2014年,第一段就职经历的入职时的年龄为22岁,则利用上述公式(1)可以计算出该用户A的第一年龄值:A2=[(2014-2013+22)=23,则可以推算上述第二年龄值为23岁。
需要说明的是,即使用户A包括多段就职经历,但由于每一段就职的时间跨度并不一致,因而利用多段就职经历计算出的用户A的年龄并不准确,所以在本实施例中优选使用第一段就职经历的入职时间,然而,在本发明中还可包括使用多段就职经历计算用户的年龄,本实施例不仅限于此。
通过本申请提供的实施例,通过上述公式(2)根据第二指示信息计算得出第二年龄值,从而实现在无法直接得知用户的年龄时,利用第二指示信息间接计算出用户的年龄值,进一步结合第一年龄值推算出用户较为准确的年龄,从而实现为用户推送符合其年龄段的数据,以使用户接收到更加符合用户喜好的数据,进一步也便于企业根据不同的年龄制定不同的营销策略,进而提高企业收益。
作为一种可选的方案,上述装置还包括:
1)第二获取单元,用于在获取第一客户端的注册信息时,获取与第一客户端关联的多个第二客户端的注册信息;
2)第三获取单元,用于从多个第二客户端的注册信息中获取与多个第二客户端对应的多个第二用户的年龄;
3)统计单元,用于对多个第二用户的年龄按照不同年龄大小统计人数,并将统计人数最多的年龄作为第三年龄值;
4)第二计算单元,用于至少利用第三年龄值计算第一用户的年龄。
可选地,在本实施例中,上述第二客户端与第一客户端之间的关联关系可以包括但不限于以下至少之一:单向关联、多向关联,其中,以微博为例,第二客户端可以是第一客户端关注的用户所对应的客户端,以新闻应用为例,第二客户端可以是第一客户端经常浏览的新闻客户端。
需要说明的是,由于大多数用户通过网络获取数据进行查看时,都会选择同龄人所发布的信息。例如,以微博为例,23岁左右的年轻人由于喜好相同,因而选择关注的大多数也是20岁左右的微博用户。
具体结合以下示例进行说明,以微博为例,假设第一客户端上的用户A关注50个第二客户端,根据多个第二客户端的注册信息获取对应的多个第二用户的年龄,例如,从多个第二客户端的注册信息中获取到50个用户的年龄,其中,15岁的7位,23岁的18位,27岁的12位,30岁的10位,60岁的3位,按照不同年龄的统计人数多少排序,其中,最多的是23岁,共18位,最少的60岁,共3位。因而,经过上述多个第二客户端上的第二用户的年龄,分析推算第三年龄值为23岁,进一步利用第三年龄值来推算第一用户的年龄。
通过本申请提供的实施例,通过获取与第一客户端关联的多个第二客户端的注册信息,进一步按照不同年龄统计人数,将所占人数最多的年龄作为第三年龄值,从而实现利用关联客户端上的第三年龄值推算出第一用户的年龄,进而根据上述得到的年龄为用户推送与用户相关的数据,进而改善用户体验。
作为一种可选的方案,第二计算单元包括以下至少之一:
1)第二计算模块,用于将第三年龄值作为第一用户的年龄;
2)第三计算模块,用于利用第三年龄值与第一年龄值计算第一用户的年龄;
3)第四计算模块,用于利用第三年龄值与第二年龄值计算第一用户的年龄;
4)第五计算模块,用于利用第三年龄值与第一年龄值和第二年龄值计算第一用户的年龄。
需要说明的是,在本实施例中,利用第三年龄段可以直接作为第一用户的年龄,即使第一客户端关注了一些不是同年龄段的微博用户,但是由于数量也比较少,因而,不会对推算用户的年龄造成影响。进一步,在本实施例中,还可以但不限于利用第三年龄段与第一年龄段和第二年龄段进行组合,进而按照配置的不同权重计算出较为准确的第一用户的年龄。其中,上述第一年龄值与第二年龄值的权重配置可以但不限于根据入学经历及入职经历的信息完整度决定,第三年龄值的权重配置可以但不限于根据需求预先配置。
具体结合以下示例进行描述,假设第一年龄值为24岁,第二年龄值为23岁,第三年龄值为23岁,其中,对上述年龄值配置的权重分别为50%、30%、20%,则可以计算出第一用户的年龄为:24*50%+23*30%+23*20%=23.5岁。
通过本申请提供的实施例,通过将第三年龄值与第一年龄值及第二年龄值的不同组合,从而实现了可以利用多种方式来计算第一用户的年龄。进一步,使得第一用户的年龄计算的更为准确。
作为一种可选的方案,推送单元308包括:
1)第二获取模块,用于获取与第一用户的年龄相匹配的数据;
2)推送模块,用于将数据推送给第一用户所在的第一客户端。
可选地,在本实施例中,在获取与第一用户的年龄相匹配的数据之前,还包括:对获取到的所有用户的年龄进行划分,以得到多个不同的年龄段。从而实现针对不同的年龄段统一进行数据推送,其中,上述年龄段可以但不限于根据不同的应用场景划分成不同的跨度,例如,每五岁化为一个年龄段,或者,每3岁化为一个年龄段,从而对属于同一年龄段的用户推送相同或相似的数据,而对不属于同一年龄段的用户则推送不同的数据。以达到根据用户的年龄为用户推送符合用户喜好的数据,使得用户更易接收所推送的数据,达到数据推送的效果。
通过本申请提供的实施例,通过根据用户的年龄先获取与其相匹配的数据,进而将匹配好的数据推送给用户,从而实现将准确的数据推送给相应用户,提高数据推送的效率。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。