CN104834639B - 一种数据交互方法、终端、服务器及数据交互系统 - Google Patents
一种数据交互方法、终端、服务器及数据交互系统 Download PDFInfo
- Publication number
- CN104834639B CN104834639B CN201410046882.5A CN201410046882A CN104834639B CN 104834639 B CN104834639 B CN 104834639B CN 201410046882 A CN201410046882 A CN 201410046882A CN 104834639 B CN104834639 B CN 104834639B
- Authority
- CN
- China
- Prior art keywords
- data
- terminal
- website
- xpath
- server
- 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
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种数据交互方法、终端、服务器及数据交互系统。本发明实施例公开的数据交互方法应用于数据交互系统,数据交互系统包括终端和服务器,数据交互方法包括:终端向服务器发送Xpath数据获取请求,Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;终端接收服务器的反馈消息,根据服务器的反馈消息对本地保存的数据作对应处理。本发明实施例能够保证终端本地保存的数据都是有效数据,且能避免用户流量的浪费。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种数据交互方法、终端、服务器及数据交互系统。
背景技术
阅读器,指的是当用户访问某一站点的网页时,使用规整好的基于该站点的页面结构的正则表达式(Xpath),过滤出网页中的标题、正文等主要消息,去除网页中的杂质和广告,以提供给用户清爽的阅读体验的一种软件。目前,市场上比较常用的阅读器的实现如下:
在终端安装系统时,服务器下发给终端所有站点的用于实现页面抽取的算法的Xpath数据,终端将这些Xpath数据保存在本地,完成阅读器的安装;当用户访问某一站点的网页时,终端使用本地保存的与该站点对应的Xpath数据对该站点的页面进行过滤,将过滤后的页面呈现给用户。
通常情况下,只有当终端系统升级的时候,服务器才会更新终端本地保存的Xpath数据,也就是说,如果终端的系统不升级,则终端本地保存的Xpath数据将不会变化。而通常情况下,为了改善用户体验,网站页面的结构是会经常变化的,一旦某一网站页面的结构变化了,终端本地保存的与该站点对应的Xpath数据也就随之失效了,也就是说对该站点就无法实现阅读器的功能了。另外,服务器将所有站点的Xpath数据一次性下发给终端,而对于有些站点,用户可能根本就不会去访问,这样就会造成用户流量的浪费。
因此,有必要提供一种新的方法解决上述问题。
发明内容
本发明实施例提供了一种数据交互方法、终端、服务器及数据交互系统,能够保证终端本地保存的都是有效的Xpath数据,避免了用户流量的浪费。所述技术方案如下:
第一方面,提供了一种数据交互方法,所述数据交互方法应用于数据交互系统,所述数据交互系统包括终端和服务器,所述方法包括:
所述终端向所述服务器发送Xpath数据获取请求,所述Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
所述终端接收所述服务器的反馈消息,根据所述反馈消息对本地保存的数据作对应处理。
第二方面,提供了另一种数据交互方法,所述数据交互方法应用于数据交互系统,所述数据交互系统包括终端和服务器,所述方法包括:
所述服务器接收所述终端发送的Xpath数据获取请求,所述Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
所述服务器查询数据库,生成与所述Xpath数据获取请求中请求的站点对应的反馈消息,向所述终端发送所述反馈消息。
第三方面,提供了一种终端,包括:
发送单元,用于向服务器发送Xpath数据获取请求,所述Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
接收单元,用于接收所述服务器的反馈消息;
处理单元,用于根据所述反馈消息对本地保存的数据作对应处理。
第四方面,提供了一种服务器,包括:
接收单元,用于接收所述终端发送的Xpath数据获取请求,所述Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
消息生成单元,用于查询数据库,生成与所述Xpath数据获取请求中请求的站点对应的反馈消息;
发送单元,用于向所述终端发送所述反馈消息。
第五方面,提供了一种数据交互系统,所述系统包括至少一个如上述第三方面提供的终端,以及至少一个如上述第四方面提供的服务器。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,终端向服务器发送Xpath数据获取请求后,服务器可以根据终端的需求向终端发送对应的反馈消息,终端根据服务器的反馈消息对本地保存的数据进行处理。也就是说,本发明实施例中,终端可以按需获取,服务器可以按需反馈,从而保证了终端中保存的数据都是有效的数据,避免了用户流量的浪费。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一个实施例提供的数据交互方法的方法流程图;
图2为本发明另一实施例提供的数据交互方法的方法流程图;
图3为本发明另一实施例提供的数据交互方法的方法流程图;
图4为本发明另一实施例提供的数据交互方法的方法流程图;
图5为本发明一个实施例提供的终端的结构方框图;
图6为本发明另一实施例提供的终端的结构方框图;
图7为本发明一个实施例提供的服务器的结构方框图;
图8是本发明另一实施例提供的终端的结构示意图;
图9为本发明一个实施例提供的数据交互系统示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种数据交互方法、终端、服务器及数据交互系统,能够保证终端本地保存的都是有效的Xpath数据,且能够避免用户流量的浪费。本发明实施例中的终端可以为个人计算机(Personal Computer,PC)、平板电脑、手机、笔记本电脑等电子设备。
请参阅图1,本发明一个实施例提供的数据交互方法包括:
101、终端向服务器发送Xpath数据获取请求;
为了在终端上实现阅读器的功能,从而给用户提供清爽的阅读体验,终端向服务器发送Xpath数据获取请求,Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据,每个站点都有对应的Xpath数据。
102、终端接收服务器的反馈消息;
服务器会根据终端发送的Xpath数据获取请求,给终端返回对应的反馈消息,终端接收服务器的反馈消息。
103、终端根据服务器的反馈消息对本地保存的数据作对应处理。
本实施例中,终端向服务器发送Xpath数据获取请求后,服务器可以根据终端的需求向终端发送对应的反馈消息,终端根据服务器的反馈消息对本地保存的数据进行处理。也就是说,本实施例中,终端可以按需获取,服务器可以按需反馈,从而保证了终端中保存的数据都是有效的数据,且避免了用户流量的浪费。
为便于理解,下面以一具体实施例对本发明实施例中数据交互方法进行描述,请参阅图2,本实施例的数据交互方法包括:
201、终端向服务器发送Xpath数据获取请求;
本实施例中的Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据,每个站点都有对应的Xpath数据。
本实施例中,终端可以在安装系统时向服务器发送Xpath数据获取请求,也可以是在接收到服务器发送的站点数据更新消息时,根据站点更新消息向服务器发送Xpath数据获取请求,以实现阅读器的功能。其中,站点更新消息中可以包含站点页面结构的更新时间、更新频率、站点删除,删除时间等。
当然,终端也可以先将用户的站点访问请求发送给服务器,同时查询终端本地是否保存有该站点的Xpath数据,当终端发现本地没有该站点的Xpath数据时,再向服务器发送Xpath数据获取请求。在这种情况下,用户第一次访问该站点时,可能无法体验阅读器的功能,但是这种按需请求的方式,会使得后续的数据维护更加方便。
另外,终端向服务器发送的Xpath数据获取请求中可以携带终端的标识,终端的标识用于标识该终端及该终端的版本。
终端向服务器发送的Xpath数据获取请求可以是请求一个站点的Xpath数据,也可以是请求多个站点的Xpath数据,多个站点可以是用户需要访问的,或经常访问的站点。
当终端向服务器发送的Xpath数据获取请求是请求多个站点的Xpath数据时,终端可以在Xpath数据获取请求中携带反馈消息的页码数量及分页大小,以使服务器可以将反馈消息按照终端的要求分页发送给终端。
202、终端接收服务器的反馈消息;
服务器在接收到终端的Xpath数据获取请求时,会查询数据库,生成与Xpath数据获取请求对应的反馈消息,将该反馈消息发送给终端,终端接收服务器的反馈消息。
终端接收到服务器的反馈消息后,会根据反馈消息的具体内容对本地保存的数据作对应处理,通常来说,反馈消息可以包括以下几种:站点的Xpath数据,站点删除标识,空包。具体的处理过程请参阅步骤203-209。
在步骤203,终端首先判断反馈消息是否为站点的Xpath数据,若是,则执行步骤204,终端判断本地是否保存有该站点的Xpath数据;若本地保存有,说明该站点的页面结构有变化,该站点的Xpath数据有更新,终端本地保存的该站点的Xpath数据已失效,执行步骤205,终端利用反馈消息中携带的该站点的Xpath数据更新本地保存的Xpath数据,若本地没有保存,则说明终端是第一次向服务器请求该站点的Xpath数据,执行步骤206,终端将该站点的Xpath数据保存在本地。
如果在步骤203,终端的判断结果反馈消息不是站点的Xpath数据,则进入步骤207,终端继续判断反馈消息是否为站点删除标识,如果是,则说明该站点已被删除,终端本地保存的该站点的Xpath数据已失效,执行步骤208,终端从本地保存的数据中删除站点删除标识中标识的站点的Xpath数据。
如果反馈消息既不是站点的Xpath数据,也不是站点删除标识,则反馈消息是空包,进入步骤209,对于内容为空包的反馈消息,一般来说,是终端请求的站点的页面结构没有变化,对应的站点的Xpath数据也就没有更新,或者页面结构有变化,但是对应站点更新后的Xpath数据的版本与终端的版本不匹配,对于这些情况,服务器返回的就是空包,终端不用作任何处理;另外,这种情况下,为了节省用户流量,服务器也可以不做任何反馈,终端与服务器提前约定,当服务器端没有反馈或者反馈为空包时,终端均不作任何处理。
本实施例中,终端向服务器发送Xpath数据获取请求后,服务器可以根据终端的需求向终端发送对应的反馈消息,终端根据服务器的反馈消息对本地保存的数据进行处理。也就是说,本实施例中,终端可以按需获取,服务器可以按需反馈,从而保证了终端中保存的数据都是有效的数据,且避免了用户流量的浪费。
上面两个实施例从终端侧描述了本发明提供的数据交互方法,下面将从服务器侧描述本发明提供的数据交互方法,请参阅图3,本实施例提供的数据交互方法包括:
301、服务器接收终端发送的Xpath数据获取请求;
本实施例中的Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据,每个站点都有对应的Xpath数据,服务器接收终端发送的Xpath数据获取请求。
302、服务器查询数据库,生成与Xpath数据获取请求中请求的站点对应的反馈消息;
数据库中保存有每个站点的Xpath数据,以及每个站点的变化情况,服务器查询数据库,生成与Xpath数据获取请求中请求的站点对应的反馈消息。
303、服务器向终端发送反馈消息。
本实施例中,服务器接收终端发送的Xpath数据获取请求,查询数据库,生成与Xpath数据获取请求中请求的站点对应的反馈消息,向终端发送反馈消息,亦即,服务器会按照终端的需求给终端发送反馈消息,终端也就能根据需要从服务器获取信息,避免了服务器一次性盲目的将所有数据发送给终端产生的用户流量的浪费,且保证了终端中保存的数据的有效性。
为便于理解,下面以一具体实施例对本发明实施例中数据交互方法进行描述,请参阅图4,本实施例的数据交互方法包括:
401、服务器接收终端发送的Xpath数据获取请求;
本实施例中的Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据,每个站点都有对应的Xpath数据,服务器接收终端发送的Xpath数据获取请求。
本实施例中,数据库中保存有每个站点的Xpath数据,服务器会统计每个站点的变化,并将每个站点的变化记录在数据库中。每个站点的变化包括站点页面结构的更新,更新时间、更新频率、站点删除,删除时间等。
服务器可以根据自身统计的站点的变化生成站点更新消息,将站点更新消息发送给终端,以及时告知终端站点的变化情况。
终端可以在接收到服务器发送的站点更新信息后,根据服务器发送的站点更新信息向服务器发送Xpath数据获取请求,当然,终端也可以在其他任何需要的时候向终端发送Xpath数据获取请求,服务器接收终端发送的Xpath数据获取请求。
另外,服务器接收的Xpath数据获取请求中还可能携带有终端的标识,终端的标识用于表示该终端及该终端的版本。服务器接收的Xpath数据获取请求可能是请求一个站点的Xpath数据,也可能是请求多个站点的Xpath数据,多个站点可以是用户需要访问的,或经常访问的站点。
如果服务器接收的Xpath数据获取请求是请求多个站点的Xpath数据,则该Xpath数据获取请求还可能携带有反馈消息的页码数量及分页大小。
402、服务器查询数据库;
数据库中不仅保存了上面所述的每个站点的Xpath数据、每个站点的变化信息,还记录有每个站点的Xpath数据支持的版本,以及每个终端的请求过的站点的Xpath数据信息。
当服务器接收到终端发送的Xpath数据获取请求之后,首先查询数据库,根据数据库中记录的相关信息生成与Xpath数据获取请求对应的反馈消息,具体生成反馈消息的方法请参见步骤403-410。
在步骤403,服务器首先根据数据库的记录,以及终端的标识判断Xpath数据获取请求中请求的站点是否为该终端之前请求过的站点,若是,则在步骤404判断该站点是否有变化,该站点的变化可以为站点页面结构的改变或站点删除;如果该站点无变化,则进入步骤408,返回空包;如果该站点有变化,则进入步骤405,判断该站点的变化是否为站点删除,若是,则执行步骤406,生成内容为站点删除标识的反馈消息;若该站点的变化不是站点的删除,而是站点页面结构的变化,即对应站点的Xpath数据有更新,则进入步骤409,服务器判断更新后的该站点的Xpath数据的版本与终端的版本是否匹配,若匹配,则进入步骤410,生成内容为更新后的该站点的Xpath数据的反馈消息,若更新后的该站点的Xpath数据的版本与终端的版本不匹配,则进入步骤408,返回空包。
若在步骤403,服务器的判断结果为Xpath数据获取请求中请求的站点不是终端之前请求过的站点,即终端第一次请求获取该站点的Xpath数据,则进入步骤407,生成内容为该站点的Xpath数据的反馈消息。
411、服务器向终端发送反馈消息。
服务器将生成的内容为站点的Xpath数据的反馈信息,或内容为站点删除标识的反馈消息,或者内容为更新后的站点的Xpath数据的反馈信息,或者空包发送给终端。
本实施例中,服务器接收终端发送的Xpath数据获取请求,查询数据库,生成与Xpath数据获取请求中请求的站点对应的反馈消息,向终端发送反馈消息,亦即,服务器会按照终端的需求给终端发送反馈消息,终端也就能根据需要从服务器获取信息,避免了服务器一次性盲目的将所有数据发送给终端产生的用户流量的浪费,且保证了终端中保存的数据的有效性。
下面介绍本发明实施例提供的终端,请参阅图5,终端500包括:
发送单元501,用于向服务器发送Xpath数据获取请求,Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
接收单元502,用于接收服务器的反馈消息;
处理单元503,用于根据服务器的反馈消息对本地保存的数据作对应处理。
为便于理解,下面以一具体实施例对本发明实施例中终端进行描述,请参阅图6,终端600包括:
发送单元601,用于向服务器发送站点访问请求;
查询单元602,用于查询本地是否保存有该站点的Xpath数据,当本地没有保存该站点的Xpath数据时,触发发送单元601向服务器发送Xpath数据获取请求;
发送单元601还用于,向服务器发送Xpath数据获取请求,Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
接收单元603,用于接收服务器的反馈消息;
处理单元604,用于根据服务器的反馈消息对本地保存的数据作对应处理。
具体地,处理器604包括数据更新单元6041及数据删除单元6042,其中:
数据更新单元6041用于,当反馈消息为站点的Xpath数据时,判断本地是否保存有该站点的Xpath数据,若有,则利用反馈消息中该站点的Xpath数据更新本地保存的该站点的Xpath数据,若没有,则将该站点的Xpath数据保存在本地;
数据删除单元6042,用于当反馈消息为站点删除标识时,从本地保存的数据中删除站点删除标识中标识的站点的Xpath数据。
为进一步理解本发明的技术方案,下面对本实施例的终端600内的各单元之间的交互方式进行描述,具体如下:
首先发送单元601可以在终端安装系统时向服务器发送Xpath数据获取请求,也可以是在接收单元603接收到服务器发送的站点数据更新消息时,根据站点更新消息向服务器发送Xpath数据获取请求,以实现阅读器的功能。其中,站点更新消息中可以包含站点页面结构的更新时间、更新频率、站点删除,删除时间等。
当然,也可以由发送单元601先将用户的站点访问请求发送给服务器,查询单元602查询终端本地是否保存有该站点的Xpath数据,当查询单元602发现本地没有该站点的Xpath数据时,再触发发送单元601向服务器发送Xpath数据获取请求。在这种情况下,用户第一次访问该站点时,可能无法体验阅读器的功能,但是这种按需请求的方式,会使得后续的数据维护更加方便。
另外,发送单元601向服务器发送的Xpath数据获取请求中可以携带终端的标识,终端的标识用于标识该终端及该终端的版本。
发送单元601向服务器发送的Xpath数据获取请求可以是请求一个站点的Xpath数据,也可以是请求多个站点的Xpath数据,多个站点可以是用户需要访问的,或经常访问的站点。
当发送单元601向服务器发送的Xpath数据获取请求是请求多个站点的Xpath数据时,发送单元601可以在Xpath数据获取请求中携带反馈消息的页码数量及分页大小,以使服务器可以将反馈消息按照终端的要求分页发送给终端。
服务器在接收到发送单元601发送的Xpath数据获取请求时,会查询数据库,生成与Xpath数据获取请求对应的反馈消息,将该反馈消息发送给终端,接收单元603接收服务器的反馈消息。
处理单元604在接收单元603接收到服务器的反馈消息后,会根据反馈消息的具体内容对本地保存的数据作对应处理,通常来说,反馈消息可以包括以下几种:站点的Xpath数据,站点删除标识,空包。处理单元604根据反馈消息的具体内容对本地保存的数据作对应处理处理的方法具体可如下:
若反馈消息为站点的Xpath数据,则数据更新单元6041判断本地是否保存有该站点的Xpath数据;若本地保存有,说明该站点的页面结构有变化,该站点的Xpath数据有更新,终端本地保存的该站点的Xpath数据已失效,数据更新单元6041利用反馈消息中携带的该站点的Xpath数据更新本地保存的Xpath数据,若本地没有保存,则说明终端是第一次向服务器请求该站点的Xpath数据,数据更新单元6041将该站点的Xpath数据保存在本地。
若反馈消息不是站点的Xpath数据,而是站点删除标识,则说明该站点已被删除,终端本地保存的该站点的Xpath数据已失效,数据删除单元6042从本地保存的数据中删除站点删除标识中标识的站点的Xpath数据。
如果反馈消息既不是站点的Xpath数据,也不是站点删除标识,而是空包,则说明终端请求的站点的页面结构没有变化,对应的站点的Xpath数据也就没有更新;或者该站点的页面结构有变化,但是该站点的更新后的Xpath数据的版本与终端的版本不匹配,对于这些情况,服务器返回的就是空包,终端不用作任何处理;另外,这种情况下,为了节省用户流量,服务器也可以不做任何反馈,终端与服务器提前约定,当服务器没有反馈会反馈为空包时,终端均不作任何处理。
本实施例中,发送单元向服务器发送Xpath数据获取请求后,服务器可以根据终端的需求向终端发送对应的反馈消息,接收单元接收服务器发送的反馈消息,处理单元根据服务器的反馈消息对本地保存的数据进行处理。也就是说,本实施例中,终端可以按需获取,服务器可以按需反馈,从而保证了终端中保存的数据都是有效的数据,且避免了用户流量的浪费。
下面介绍本发明实施例提供的服务器,请参阅图7,本实施例的服务器700包括:
接收单元701,用于接收终端发送的Xpath数据获取请求,Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
消息生成单元702,用于查询数据库,生成与Xpath数据获取请求中请求的站点对应的反馈消息;
发送单元703,用于向终端发送所述反馈消息。
为进一步理解本发明的技术方案,下面对本实施例的服务器700内的各单元之间的交互方式进行描述,具体如下:
首先,本实施例中的Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据,每个站点都有对应的Xpath数据。
本实施例中,数据库(图7中未示出)与服务器相连,数据库中保存有每个站点的Xpath数据,服务器会统计每个站点的变化,并将每个站点的变化记录在数据库中。每个站点的变化包括站点页面结构的更新,更新时间、更新频率、站点删除,删除时间等。
在接收单元701接收到终端发送的Xpath数据获取请求之前,消息生成单元702可以根据统计的站点的变化生成站点更新消息,发送单元703将站点更新消息发送给终端,以及时告知终端站点的变化情况。
终端可以在接收到发送单元703发送的站点更新信息后,根据发送单元703发送的站点更新信息向服务器发送Xpath数据获取请求,当然,终端也可以在其他任何需要的时候向终端发送Xpath数据获取请求,接收单元701接收终端发送的Xpath数据获取请求。
另外,接收单元701接收的Xpath数据获取请求中还可能携带有终端的标识,终端的标识用于表示该终端及该终端的版本,接收单元701接收的Xpath数据获取请求可能是请求一个站点的Xpath数据,也可能是请求多个站点的Xpath数据,多个站点可以是用户需要访问的,或经常访问的站点。
如果接收单元701接收的Xpath数据获取请求是请求多个站点的Xpath数据,则该Xpath数据获取请求还可能携带有反馈消息的页码数量及分页大小。
另外,数据库中不仅保存了上面所述的每个站点的Xpath数据、每个站点的变化信息,还记录有每个站点的Xpath数据支持的版本,以及每个终端的请求过的站点的Xpath数据信息。
当接收单元701接收到终端发送的Xpath数据获取请求之后,消息生成单元702首先查询数据库,根据数据库中记录的相关信息生成与Xpath数据获取请求对应的反馈消息。具体地,消息生成单元702生成反馈消息的方法可如下:
消息生成单元702首先根据数据的记录,以及终端的标识判断Xpath数据获取请求中请求的站点是否为终端之前请求过的站点,若是,则判断该站点是否有变化,该站点的变化可以为站点页面结构的改变或站点删除;如果该站点无变化,返回空包;如果该站点有变化,则消息生成单元702判断该站点的变化是否为站点删除,若是,则消息生成单元702生成内容为站点删除标识的反馈消息;若该站点的变化不是站点的删除,而是站点页面结构的变化,即对应站点的Xpath数据有更新,则消息生成单元702判断更新后的该站点的Xpath数据的版本与终端的版本是否匹配,若匹配,则消息生成单元702生成内容为更新后的该站点的Xpath数据的反馈消息,若更新后的该站点的Xpath数据的版本与终端的版本不匹配,则消息生成单元702返回空包。
若消息生成单元702的判断结果为Xpath数据获取请求中请求的站点不是终端之前请求过的站点,即终端第一次请求获取该站点的Xpath数据,则消息生成单元702生成内容为该站点的Xpath数据的反馈消息。
发送单元703将消息生成单元702生成的内容为站点的Xpath数据的反馈信息,或内容为站点删除标识的反馈消息,或者内容为更新后的站点的Xpath数据的反馈信息,或者空包发送给终端。
本实施例中,接收单元接收终端发送的Xpath数据获取请求,消息生成单元查询数据库,生成与Xpath数据获取请求中请求的站点对应的反馈消息,发送单元向终端发送反馈消息,亦即,消息生成单元会按照终端的需求生成不同的反馈消息,终端也就能根据需要从服务器获取不同的反馈消息,避免了服务器一次性盲目的将所有数据发送给终端产生的用户流量的浪费,且保证了终端中保存的数据的有效性。
图8是本发明实施例提供的终端的结构示意图。请参阅图8,终端800可以用于实施上述实施例提供的数据交互方法。具体来讲:
终端800可以包括RF(Radio Frequency,射频)电路810、包括有一个或一个以上计算机可读存储介质的存储器820、输入单元830、显示单元840、传感器850、音频电路860、WiFi(wireless fidelity,无线保真)模块870、包括有一个或者一个以上处理核心的处理器880、以及电源890等部件。本领域技术人员可以理解,图8中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路810可用于收发消息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器880处理;另外,将涉及上行的数据发送给基站。通常,RF电路810包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路810还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(CodeDivision Multiple Access,码分多址)、WCDMA(Wideband Code Division MultipleAccess,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(ShortMessaging Service,短消息服务)等。
存储器820可用于存储软件程序以及模块,处理器880通过运行存储在存储器820的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器820可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端800的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器820还可以包括存储器控制器,以提供处理器880和输入单元830对存储器820的访问。
输入单元830可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元830可包括触敏表面831以及其他输入设备832。触敏表面831,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面831上或在触敏表面831附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面831可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器880,并能接收处理器880发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面831。除了触敏表面831,输入单元830还可以包括其他输入设备832。具体地,其他输入设备832可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元840可用于显示由用户输入的信息或提供给用户的信息以及终端800的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元840可包括显示面板841,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板841。进一步的,触敏表面831可覆盖显示面板841,当触敏表面831检测到在其上或附近的触摸操作后,传送给处理器880以确定触摸事件的类型,随后处理器880根据触摸事件的类型在显示面板841上提供相应的视觉输出。虽然在图8中,触敏表面831与显示面板841是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面831与显示面板841集成而实现输入和输出功能。
终端800还可包括至少一种传感器850,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板841的亮度,接近传感器可在终端800移动到耳边时,关闭显示面板841和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端800还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路860、扬声器861,传声器862可提供用户与终端800之间的音频接口。音频电路860可将接收到的音频数据转换后的电信号,传输到扬声器861,由扬声器861转换为声音信号输出;另一方面,传声器862将收集的声音信号转换为电信号,由音频电路860接收后转换为音频数据,再将音频数据输出处理器880处理后,经RF电路810以发送给比如另一终端,或者将音频数据输出至存储器820以便进一步处理。音频电路860还可能包括耳塞插孔,以提供外设耳机与终端800的通信。
WiFi属于短距离无线传输技术,终端800通过WiFi模块870可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图8示出了WiFi模块870,但是可以理解的是,其并不属于终端800的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器880是终端800的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器820内的软件程序和/或模块,以及调用存储在存储器820内的数据,执行终端800的各种功能和处理数据,从而对终端进行整体监控。可选的,处理器880可包括一个或多个处理核心;优选的,处理器880可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器880中。
终端800还包括给各个部件供电的电源890(比如电池),优选的,电源可以通过电源管理系统与处理器880逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源890还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端800还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端的显示单元可以是触摸屏显示器,终端还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行述一个或者一个以上程序包含用于进行以下操作的指令:
向服务器发送Xpath数据获取请求,Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
接收服务器的反馈消息,根据服务器的反馈消息对本地保存的数据作对应处理。
需要说明的是,本发明实施例提供的终端800,还可以用于实现上述方法实施例中的其它步骤,在此不再赘述。
本发明实施例还提供一种数据交互系统,具体请参阅图9,该数据交互系统包括:至少一个终端901,以及至少一个服务器902。
需要说明的是,本实施例中的终端901可以与前述图5或图6所示的终端相同,本实施例中的服务器902可以与前述图7所示的服务器相同,具体此处不再赘述。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,单元之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上对本发明实施例所提供的一种数据交互方法、终端、服务器及数据交互系统进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,因此,本说明书内容不应理解为对本发明的限制。
Claims (23)
1.一种数据交互方法,其特征在于,所述数据交互方法应用于数据交互系统,所述数据交互系统包括终端和服务器,所述方法包括:
所述终端向所述服务器发送Xpath数据获取请求,所述Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
所述终端接收所述服务器的反馈消息,根据所述反馈消息对本地保存的数据作对应处理;
其中,所述终端根据所述反馈消息对本地保存的数据作对应处理包括:
若所述反馈消息为站点的Xpath数据,则所述终端判断本地是否保存有所述站点的Xpath数据,若有,则利用所述反馈消息中所述站点的Xpath数据更新本地保存的所述站点的Xpath数据,若没有,则将所述站点的Xpath数据保存在本地;
若所述反馈消息为站点删除标识,则所述终端从本地保存的数据中删除所述站点删除标识中标识的站点的Xpath数据。
2.如权利要求1所述的数据交互方法,其特征在于,所述终端向所述服务器发送Xpath数据获取请求之前,还包括:
所述终端向所述服务器发送站点访问请求,同时,所述终端查询本地是否保存有所述站点的Xpath数据,当所述终端发现本地没有所述站点的Xpath数据时,触发向所述服务器发送Xpath数据获取请求的步骤。
3.如权利要求1所述的数据交互方法,其特征在于,所述终端向所述服务器发送Xpath数据获取请求之前,还包括:
所述终端接收所述服务器发送的站点数据更新消息;
所述终端向所述服务器发送Xpath数据获取请求的方法具体为:
所述终端根据所述站点数据更新消息向所述服务器发送Xpath数据获取请求。
4.如权利要求1至3任意一项所述的数据交互方法,其特征在于,所述Xpath数据获取请求中携带有所述终端的标识,所述终端的标识用于标识所述终端及所述终端的版本。
5.如权利要求1至3任意一项所述的数据交互方法,其特征在于,所述Xpath数据获取请求为请求一个或多个站点的Xpath数据。
6.如权利要求5所述的数据交互方法,其特征在于,当所述Xpath数据获取请求为请求多个站点的Xpath数据时,所述Xpath数据获取请求中携带有反馈消息的页码数量及分页大小。
7.一种数据交互方法,其特征在于,所述数据交互方法应用于数据交互系统,所述数据交互系统包括终端和服务器,所述方法包括:
所述服务器接收所述终端发送的Xpath数据获取请求,所述Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
所述服务器查询数据库,生成与所述Xpath数据获取请求中请求的站点对应的反馈消息,向所述终端发送所述反馈消息;
所述服务器查询数据库,生成与所述Xpath数据获取请求中请求的站点对应的反馈消息的方法具体包括:
所述服务器查询数据库,根据所述终端的标识判断所述Xpath数据获取请求中请求的站点为所述终端之前请求过的站点;
所述服务器判断所述站点是否有变化;
若有,则所述服务器生成与所述站点的变化对应的反馈消息,若无,则返回空包;
其中,所述服务器生成与所述站点的变化对应的反馈消息的方法具体为:
若所述站点已删除,则所述服务器生成内容为站点删除标识的反馈消息,以使得所述终端从本地保存的数据中删除所述站点删除标识中标识的站点的Xpath数据;
若所述站点的页面结构有更新,则所述服务器判断更新后的所述站点的Xpath数据的版本与所述终端的版本是否匹配,若匹配,则生成内容为更新后的所述站点的Xpath数据的反馈消息,以使得所述终端利用所述反馈消息中所述站点的Xpath数据更新本地保存的所述站点的Xpath数据,若不匹配,则返回空包,则使得所述终端将所述站点的Xpath数据保存在本地。
8.如权利要求7所述的数据交互方法,其特征在于,所述服务器接收所述终端发送的Xpath数据获取请求之前,还包括:
向所述终端发送站点数据更新消息。
9.如权利要求7所述的数据交互方法,其特征在于,所述Xpath数据获取请求携带有所述终端的标识,所述终端的标识用于标识所述终端及所述终端的版本;
所述服务器查询数据库,生成与所述Xpath数据获取请求中请求的站点对应的反馈消息的方法具体包括:
所述服务器查询数据库,根据所述终端的标识判断所述Xpath数据获取请求中请求的站点是否为所述终端之前请求过的站点;
若不是,则所述服务器生成内容为所述站点的Xpath数据的反馈消息。
10.如权利要求7至9任意一项所述的数据交互方法,其特征在于,所述Xpath数据获取请求为请求一个或多个站点的Xpath数据。
11.如权利要求10所述的数据交互方法,其特征在于,当所述Xpath数据获取请求为请求多个站点的Xpath数据时,所述Xpath数据获取请求中携带有反馈消息的页码数量及分页大小;
所述服务器向所述终端发送所述反馈消息的方法为:
所述服务器根据所述Xpath数据获取请求中携带的反馈消息的页码数量及分页大小将所述反馈消息分页后发送给所述终端。
12.一种终端,其特征在于,包括:
发送单元,用于向服务器发送Xpath数据获取请求,所述Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
接收单元,用于接收所述服务器的反馈消息;
处理单元,用于根据所述反馈消息对本地保存的数据作对应处理;
其中,所述处理单元包括:
数据更新单元,用于当所述反馈消息为站点的Xpath数据时,判断本地是否保存有所述站点的Xpath数据,若有,则利用所述反馈消息中所述站点的Xpath数据更新本地保存的所述站点的Xpath数据,若没有,则将所述站点的Xpath数据保存在本地;
数据删除单元,用于当所述反馈消息为站点删除标识时,则从本地保存的数据中删除所述站点删除标识中标识的站点的Xpath数据。
13.如权利要求12所述的终端,其特征在于,所述发送单元还用于:
在向所述服务器发送Xpath数据获取请求之前,向所述服务器发送站点访问请求;
所述终端还包括:
查询单元,用于查询本地是否保存有所述站点的Xpath数据,当本地没有保存所述站点的Xpath数据时,触发所述发送单元向所述服务器发送Xpath数据获取请求。
14.如权利要求12所述的终端,其特征在于,所述接收单元还用于:
在所述发送单元向所述服务器发送Xpath数据获取请求之前,接收所述服务器发送的站点数据更新消息;
所述发送单元向所述服务器发送Xpath数据获取请求的方法具体为:
所述发送单元根据所述站点数据更新消息向所述服务器发送Xpath数据获取请求。
15.如权利要求12至14任一项所述的终端,其特征在于,所述Xpath数据获取请求中携带有所述终端的标识,所述终端的标识用于标识所述终端及所述终端的版本。
16.如权利要求12至14任一项所述的终端,其特征在于,所述Xpath数据获取请求为请求一个或多个站点的Xpath数据。
17.如权利要求16所述的终端,其特征在于,当所述Xpath数据获取请求为请求多个站点的Xpath数据时,所述Xpath数据获取请求中携带有反馈消息的页码数量及分页大小。
18.一种服务器,其特征在于,包括:
接收单元,用于接收终端发送的Xpath数据获取请求,所述Xpath数据指的是用于实现从指定站点的页面抽取目标数据的算法的数据;
消息生成单元,用于查询数据库,生成与所述Xpath数据获取请求中请求的站点对应的反馈消息;
发送单元,用于向所述终端发送所述反馈消息;
其中,所述消息生成单元具体用于:
查询数据库,根据所述终端的标识判断所述Xpath数据获取请求中请求的站点为所述终端之前请求过的站点;
所述消息生成单元判断所述站点是否有变化;
若有,则所述消息生成单元生成与所述站点的变化对应的反馈消息,若无,则返回空包;
其中,所述消息生成单元生成与所述站点的变化对应的反馈消息的方法具体为:
若所述站点已删除,则所述消息生成单元生成内容为站点删除标识的反馈消息,以使得所述终端从本地保存的数据中删除所述站点删除标识中标识的站点的Xpath数据;
若所述站点的页面结构有更新,则所述消息生成单元判断更新后的所述站点的Xpath数据的版本与所述终端的版本是否匹配,若匹配,则生成内容为更新后的所述站点的Xpath数据的反馈消息,以使得所述终端利用所述反馈消息中所述站点的Xpath数据更新本地保存的所述站点的Xpath数据,若不匹配,则返回空包,则使得所述终端将所述站点的Xpath数据保存在本地。
19.如权利要求18所述服务器,其特征在于,所述发送单元还用于:
在所述接收单元接收所述终端发送的Xpath数据获取请求之前,向所述终端发送站点数据更新消息。
20.如权利要求18所述服务器,其特征在于,所述Xpath数据获取请求中携带有所述终端的标识,所述终端的标识用于标识所述终端及所述终端的版本;
所述消息生成单元具体用于:
查询数据库,根据所述终端的标识判断所述Xpath数据获取请求中请求的站点是否为所述终端之前请求过的站点;
若不是,则所述消息生成单元生成内容为所述站点的Xpath数据的反馈消息。
21.如权利要求18至20任意一项所述服务器,其特征在于,所述Xpath数据获取请求为请求一个或多个站点的Xpath数据。
22.如权利要求21所述服务器,其特征在于,当所述Xpath数据获取请求为请求多个站点的Xpath数据时,所述Xpath数据获取请求中携带有反馈消息的页码数量及分页大小;
所述发送单元向所述终端发送所述反馈消息的方法为:
所述发送单元根据所述Xpath数据获取请求中携带的反馈消息的页码数量及分页大小将所述反馈消息分页后发送给所述终端。
23.一种数据交互系统,其特征在于,包括至少一个如权利要求12至17任意一项所述的终端,以及至少一个如权利要求18至22任意一项所述的服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410046882.5A CN104834639B (zh) | 2014-02-10 | 2014-02-10 | 一种数据交互方法、终端、服务器及数据交互系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410046882.5A CN104834639B (zh) | 2014-02-10 | 2014-02-10 | 一种数据交互方法、终端、服务器及数据交互系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104834639A CN104834639A (zh) | 2015-08-12 |
CN104834639B true CN104834639B (zh) | 2019-08-30 |
Family
ID=53812538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410046882.5A Active CN104834639B (zh) | 2014-02-10 | 2014-02-10 | 一种数据交互方法、终端、服务器及数据交互系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104834639B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105653290B (zh) * | 2016-01-08 | 2019-07-09 | 王弘远 | 数据交互方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1588370A (zh) * | 2004-09-08 | 2005-03-02 | 孟小峰 | 包装器的维护方法 |
CN101369952A (zh) * | 2007-08-17 | 2009-02-18 | 徐萍 | 数据自动交互系统及方法 |
CN101853300A (zh) * | 2010-05-26 | 2010-10-06 | 中国科学技术大学 | 一种视频下载服务网站的识别、评估方法及系统 |
CN103248641A (zh) * | 2012-02-07 | 2013-08-14 | 腾讯科技(深圳)有限公司 | 网络下载方法、装置及系统 |
-
2014
- 2014-02-10 CN CN201410046882.5A patent/CN104834639B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1588370A (zh) * | 2004-09-08 | 2005-03-02 | 孟小峰 | 包装器的维护方法 |
CN101369952A (zh) * | 2007-08-17 | 2009-02-18 | 徐萍 | 数据自动交互系统及方法 |
CN101853300A (zh) * | 2010-05-26 | 2010-10-06 | 中国科学技术大学 | 一种视频下载服务网站的识别、评估方法及系统 |
CN103248641A (zh) * | 2012-02-07 | 2013-08-14 | 腾讯科技(深圳)有限公司 | 网络下载方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104834639A (zh) | 2015-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10635449B2 (en) | Method and apparatus for running game client | |
CN104518953B (zh) | 删除消息的方法、即时通信终端及系统 | |
CN105824958B (zh) | 一种查询日志的方法、装置和系统 | |
CN105278937B (zh) | 一种显示弹出框消息的方法及装置 | |
US20170316781A1 (en) | Remote electronic service requesting and processing method, server, and terminal | |
CN104915091B (zh) | 一种显示状态栏提示信息的方法和装置 | |
CN108039963B (zh) | 一种容器配置方法、装置及存储介质 | |
CN103473004A (zh) | 一种显示消息的方法、装置及终端设备 | |
CN105490919A (zh) | 消息撤回方法和装置 | |
CN105302452B (zh) | 一种基于手势交互的操作方法及装置 | |
WO2014206143A1 (zh) | 未读消息数目显示方法、装置和设备 | |
CN104216915A (zh) | 网页处理方法、装置和终端设备 | |
CN104238893A (zh) | 一种对视频预览图片进行显示的方法和装置 | |
CN104951215A (zh) | 一种页面操作的处理方法和装置 | |
US10320730B2 (en) | Method and device for displaying message | |
CN104780234B (zh) | Ip归属地查询方法、装置及系统 | |
CN104573437A (zh) | 信息认证方法、装置和终端 | |
CN103399706A (zh) | 页面交互方法、装置及终端 | |
CN105553718B (zh) | 引导信息显示方法及装置 | |
CN104391588B (zh) | 一种输入提示的方法及装置 | |
CN103501373A (zh) | 发起呼叫的方法、装置及终端 | |
CN107766351B (zh) | 文件目录的识别方法及装置 | |
CN104636455A (zh) | 应用程序映射信息的获取方法及装置 | |
CN104580251B (zh) | 一种进行授权快速登录的方法和装置 | |
US20140380198A1 (en) | Method, device, and terminal apparatus for processing session based on gesture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |