预读方法和装置 技术领域
本发明涉及移动终端领域, 特别涉及一种预读方法和装置。 背景技术
在移动网络带宽受限, 连接不稳定等实际情况的约束下, 手机客户端特别是手机浏览 器, 一般使用预读功能减少用户打开网页时的实际等待时间。 所谓预读, 就是在用户浏览 网页 A时, 遍历 A中包含的所有链接, 判断用户最有可能访问其中哪一个链接, 并将此链 接指向的网页内容预先读取下来, 当用户实际点击该链接时, 立即将网页显示给用户。
在手机浏览器客户端的通常实现方式比较简单,通过编码固定的关键字"下一页"、 "下 页"等, 作为预读关键字, 以提高用户在浏览新闻、 小说等特定模式的网站时的体验。
在对现有技术进行分析后, 发明人发现现有技术至少具有如下缺点:
在现有技术的预读方法中, 通常使用硬编码来固定关键字, 不能适时更新, 更不能根 据不同网站的特点选用最适合的关键字进行预读, 对除特定的新闻、 小说以外的网页预读 有效性很低, 浪费用户流量。 发明内容
为了节约移动终端的用户流量, 提高了浏览网页的速度和效率, 本发明实施例提供了 一种预读方法和装置。 所述技术方案如下:
一种预读方法, 包括:
打开网页时, 根据当前网页和预读规则获取预读链接;
读取所述预读链接指示的网页内容。
根据当前网页的网址和预读规则获取预读链接之前, 包括:
客户端从服务器端获取预读规则。
所述客户端从服务器端获取预读规则, 包括:
所述客户端向服务器端请求预读规则, 并判断所述服务器端保存的预读规则与所述客 户端保存的预读规则是否相同, 如果否, 则利用所述服务器端保存的预读规则更新所述客 户端保存的预读规则。
所述客户端从服务器端获取预读规则之后, 所述方法还包括:
识别当前网页类型, 从服务器端获取的预读规则中获取所述当前网页类型相应的预读 规则。
其中, 所述识别当前网页类型, 具体包括:
根据当前网页的域名或链接与预存的网站信息分类进行查询, 得到该当前网页类型。 根据当前网页和预读规则获取预读链接, 具体包括:
判断所述当前网页是否与所述预读规则中的网址规则匹配, 如果是, 则从所述当前网 页上获取与所述预读规则中的网址规则相应的链接作为预读链接。
判断所述当前网页是否与所述预读规则中的网址规则匹配, 具体包括:
判断所述当前网页的网址是否包含所述网址规则的网址字段, 如果是, 则所述当前网 页与所述预读规则中的网址规则匹配; 如果否, 则所述当前网页与所述预读规则中的网址 规则不匹配。
从所述当前网页上获取与所述预读规则中的网址规则相应的链接作为预读链接, 具体 包括:
遍历所述当前网页, 判断所述当前网页中是否包含所述预读规则中的网址规则中描述 的关键字, 如果是, 则将与所述关键字对应的链接作为预读链接。
所述方法还包括:
所述客户端记录应用所述预读规则后的浏览情况, 并将所述浏览情况与所述预读规则 之间进行比对, 将所述预读规则的成功率上报给所述服务器端。
一种预读装置, 包括:
获取模块, 用于打开网页时, 根据当前网页和预读规则获取预读链接;
读取模块, 用于读取所述预读链接指示的网页内容。
所述装置还包括:
规则获取模块, 用于从服务器端获取预读规则。
所述规则获取模块包括:
请求单元, 用于向服务器端请求预读规则, 并判断所述服务器端保存的预读规则与所 述客户端保存的预读规则是否相同, 如果否, 则利用所述服务器端保存的预读规则更新所 述客户端保存的预读规则。
所述规则获取模块, 还用于在从服务器端获取预读规则之后,
识别当前网页类型, 从服务器端获取的预读规则中获取所述当前网页类型相应的预读 规则。
所述规则获取模块包括识别单元, 用于
根据当前网页的域名或链接与预存的网站信息分类进行查询, 得到该当前网页类型。 所述获取模块包括:
判断单元, 用于判断所述预读规则中是否包含与所述当前网页匹配的网址规则, 如果 是, 则触发用于从所述当前网页上获取与匹配的网址规则相应的链接作为预读链接的获取 单元。
所述判断单元具体用于判断所述预读规则中是否包含所述当前网页的网址字段, 如果 是, 则所述预读规则中包含与所述当前网页匹配的网址规则; 如果否, 则所述预读规则中 不包含与所述当前网页匹配的网址规则。
所述判断单元包括:
判断子单元用于判断所述当前网页中是否包含所述匹配的网址规则中描述的关键字, 如果是, 则将与所述关键字对应的链接作为预读链接。
所述装置还包括:
上报模块, 用于记录应用所述预读规则后的浏览情况, 并将所述浏览情况与所述预读 规则之间进行比对, 将所述预读规则的成功率上报给所述服务器端。 一种移动终端, 所述移动终端包括上述的任一种预读装置。
本发明实施例提供的技术方案的有益效果是:
通过客户端从服务器端获取预读规则, 并根据预读规则和当前网页链接进行预读, 避免了 由于使用硬编码固定关键字造成的预读有效性低的情况, 达到了根据当前页面的具体情况, 适时更新预读方式, 不仅节约了用户流量, 还提高了浏览的速度和效率。 附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实施例或现有技 术描述中所需要使用的附图作简单地介绍, 显而易见地, 下面描述中的附图仅仅是本发明 的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动性的前提下, 还可以 根据这些附图获得其他的附图。
图 1是本发明实施例提供的一种预读方法的流程图;
图 2是本发明实施例提供的一种预读方法的流程图;
图 3是本发明实施例提供的一种预读装置的结构示意图;
图 4是本发明实施例提供的一种预读装置的结构示意图;
图 5是本发明实施例提供的一种预读装置的结构示意图;
图 6是本发明实施例提供的一种预读装置的结构示意图;
图 7是本发明实施例提供的一种预读装置的结构示意图。 具体实施方式
为使本发明的目的、 技术方案和优点更加清楚, 下面将结合附图对本发明实施方式作 进一步地详细描述。
C/S即 Cl ient /Server, 客户端 /服务端 (器);
客户端指运行在手机上的手机浏览器, 还可以是手机阅读器等其他客户端, 所有在移 动终端 (如手机) 上运行的实现特定功能的程序均可作为本发明所称的客户端;
本发明各实施例中服务器、 服务器端、 服务端含义相同, 后续不再赘述。
实施例 1
为了提高预读的灵活性, 节约用户流量, 本发明实施例提供了一种预读方法, 本实施 例中的预读方法的执行主体为客户端, 该客户端可以为一运行在移动设备上的浏览器, 还 可以是手机阅读器等其他客户端, 所有在移动终端 (如手机) 上运行的实现特定功能的程 序均可作为本发明所称的客户端, 参见图 1, 该方法包括:
101: 打开网页时, 根据当前网页和预读规则获取预读链接;
102: 读取所述预读链接指示的网页内容。
进一步地, 根据当前网页的网址和预读规则获取预读链接之前, 包括:
所述客户端从服务器端获取预读规则。
其中, 所述客户端从服务器端获取预读规则, 包括:
所述客户端向服务器端请求预读规则, 并判断所述服务器端保存的预读规则与所述客 户端保存的预读规则是否相同, 如果否, 则利用所述服务器端保存的预读规则更新所述客 户端保存的预读规则。
进一步地, 在所述客户端从服务器端获取预读规则之后, 所述方法还包括: 识别当前网页类型, 从服务器端获取的预读规则中获取所述当前网页类型相应的预读 规则。
其中, 所述识别当前网页类型, 具体包括:
根据当前网页的域名或链接与预存的网站信息分类进行查询, 得到该当前网页类型。 其中, 根据当前网页和预读规则获取预读链接, 具体包括:
判断所述预读规则中是否包含与所述当前网页匹配的网址规则, 如果是, 则从所述当
前网页上获取与匹配的网址规则相应的链接作为预读链接。
其中, 判断所述预读规则中是否包含与所述当前网页匹配的网址规则, 具体包括: 判断所述预读规则中是否包含所述当前网页的网址字段, 如果是, 则所述预读规则中 包含与所述当前网页匹配的网址规则; 如果否, 则所述预读规则中不包含与所述当前网页 匹配的网址规则。
其中, 从所述当前网页上获取与匹配的网址规则相应的链接作为预读链接, 具体包括: 判断所述当前网页中是否包含所述匹配的网址规则中描述的关键字, 如果是, 则将与 所述关键字对应的链接作为预读链接。
其中, 所述方法还包括:
所述客户端记录应用所述预读规则后的浏览情况, 并将所述浏览情况与所述预读规则 之间进行比对, 将所述预读规则的成功率上报给所述服务器端。
该预读规则的成功率可以为数字, 也可以为百分比, 例如, 对于预读规则 A, 在十次预 读过程里, 有八次用户终端阅读了预读页面, 则, 该预读规则 A的成功率为 80%, 或 0. 8, 本领域技术人员可以获知, 该成功率还可以是列表的形式, 由多个预读规则的成功率组成, 在预读规则应用过程中每隔一段时长上报。
本实施例提供的方法, 通过客户端从服务器端获取预读规则, 并根据预读规则和当前 网页链接进行预读, 避免了由于使用硬编码固定关键字造成的预读有效性低的情况, 达到 了根据当前页面的具体情况, 适时更新预读方式, 不仅节约了用户流量, 还提高了浏览的 速度和效率。 实施例 2
为了提高预读的灵活性, 节约用户流量, 本发明实施例提供了一种预读方法, 本实施 例中的预读方法的交互双方为客户端和服务器端, 其中, 该客户端为可以运行在移动设备 上的浏览器, 还可以是手机阅读器等其他客户端, 所有在移动终端 (如手机) 上运行的实 现特定功能的程序均可作为本发明所称的客户端, 该服务器端可以为第三方服务器, 参见 图 2, 该方法包括:
201: 客户端从服务器端获取预读规则;
在本实施例中, 该获取可以在客户端启动时进行, 还可以是客户端启动后, 每隔预设 时长向服务器端获取, 客户端获取并保存该预读规则后, 当再次启动客户端浏览网页时, 应用该预读规则进行预读。
该预读规则, 或称规则, 是客户端用于选择预读链接的依据, 该预读规则为技术人员
在服务器端设置。
需要说明的是, 当客户端从服务器端获取预读规则时, 该获取步骤具体包括: 判断该 服务器端保存的预读规则与该客户端保存的预读规则是否相同, 如果否, 则利用该服务器 端保存的预读规则更新该客户端保存的预读规则。 本领域技术人员可以获知, 该更新是指 下载服务器端保存的预读规则并删除客户端保存的预读规则。
202: 当客户端打开网页时, 遍历该网页;
本领域技术人员可以获知, 当客户端在浏览网页时, 可将网页上的图片、 HTML等内容 下载到客户端, 并在客户端显示该网页。
203: 从网页中获取该网页上的所有链接;
本领域技术人员可以获知, 链接是指超文本标记语言 (HTML , 丽 L 等) 中的〈a〉,
需要说明的是, 上述步骤 202-203 可以是客户端在打开网页时同时进行的, 这些步骤 与下述的步骤 204没有固定的前后关系, 可以先进行匹配, 然后再获取网页上的所有链接, 也可以先获取链接, 再进行匹配。
204: 判断该预读规则中是否包含与该当前网页匹配的网址规则;
如果是, 则执行步骤 205;
如果否, 执行步骤 206;
该步骤 204 中判断匹配的具体方法包括: 判断该预读规则中是否包含该当前网页的网 址字段, 如果是, 则该预读规则中包含与该当前网页匹配的网址规则; 如果否, 则该预读 规则中不包含与该当前网页匹配的网址规则。
本领域技术人员可以获知, 该当前网页的网址字段是指当前浏览页面的网络地址中的 域字段或标志性字段, 通过将该网址字段与预读规则的匹配, 选择出适合该网页的预读链 接。
在本实施例中, 该预读规则包括对网页进行预读的所用的多个网址规则等。 优选地, 该预读规则可以使用标注的 XML语法定义, 该预读规则可以由技术人员在服务器端根据网 站的服务性质或网站的内容以及一般用户的阅读习惯进行设置。
举例说明, 当前链接 URL为 http:〃 www. qq. com/sports/index. jsp, 而预读规则中包含 网址字段为 http:〃 www. qq. com/sports/ 所对应的规则, 则该网页链接与预读规则中的网 址规则匹配, 该规则对应的预读关键字可以为 "直播", 则选取网页链接中 "直播"所对应 的链接为预读链接。
另外, 预读规则中的网址规则还可以是针对某些站点设计的, 此时, 步骤 204 中的判
断匹配的具体方法包括: 判断当前网页的网址字段中是否包括网址规则中的站点, 如果是, 则该预读规则中包含与该当前网页匹配的网址规则; 如果否, 则该预读规则中不包含与该 当前网页匹配的网址规则。 例如, 链接 URL 为 http:〃 www. qq. com/sports/index. jsp, 而 站点规则的字段为 qq. com, 即预读规则中包含与该当前网页匹配的网址规则。
本领域技术人员可以获知, 在匹配网址规则时, 由于预读规则中可能包含多个网址规 贝 |J, 所以, 需要根据当前连接的网页地址与预读规则中各个网址规则进行比较, 以判断预 读规则中是否包含与该网页地址相匹配的网址规则。
在本发明的另一实施例中, 该步骤 204还可以为: 识别该当前浏览页面类型 (也即当 前网页类型); 从预存规则 (也即从服务器端获取的预读规则) 中获取该当前浏览页面类型 相应的预读规则, 执行步骤 205; 在本实施例中, 根据网页内容区分, 可以有小说、 新闻网 页等多种, 其内容可以有多种, 本发明实施例不做具体限定。 根据网页所属网站区分, 可 以有微博网站、 购物网站、 综合网站等多种, 其网站类型可以有多种, 本发明实施例不做 具体限定。 该识别的具体方法包括: 根据当前域名或链接与预存的网站信息分类进行查询, 得到该浏览页面类型。 例如, 当前浏览页面的域名为 t. qq. com, 查询预存的网站信息分类 可知, 该 t. qq. com为微博类网站。 该网站信息分类由技术人员在开发时设置, 其内容包括 网站域名或链接与网站类型之间的关联关系, 另外, 该网站信息分类还可以通过链接中的 关键字, 例如, shopl234. taobao. com, 该网站对应的关键字为 taobao, 则可以判断该网站 为购物类网站。
205: 从该当前网页上获取与匹配的网址规则相应的链接作为预读链接, 执行步骤 207; 该步骤 205具体包括:
判断该当前网页中是否包含该匹配的网址规则中描述的关键字, 如果是, 则将与该关 键字对应的链接作为预读链接。
需要说明的是, 网址规则中包括关键字序列, 本领域技术人员可以获知, 步骤 205中, 当预读规则中的网址规则与当前网页的网址匹配时, 客户端使用该匹配的规则的关键字序 列 (关键字可以有多个) 对当前网页上的内容进行查询, 并获取与关键字序列中任一个关 键字对应的链接。
在本实施例中, 首先根据当前网页匹配的规则, 确定要使用的关键字序列; 然后根据 关键字序列匹配当前网页包含的所有链接对应的文字 (Anchor Text ) , 第一个符合条件的 链接即为本次的预读链接。
206: 获取与该预读规则中的通用规则相应的链接, 作为预读链接, 执行步骤 207; 进一步地, 当该网页与预读规则不匹配时, 使用预先设置的通用规则, 优选地, 通用
规则可以为: 从网页内容中获取与关键字匹配的链接, 关键字包括: "下一页"、 "下页"、 "下一章"、 "下章"等。
例如, 当该通用规则的定义使用标注的 XML语法时, 具体定义如下:
<GeneralRule>
〈KeyWord〉下一页〈/KeyWord〉
〈KeyWord〉下页〈/KeyWord〉
〈KeyWord〉下一章〈/KeyWord〉
〈KeyWord〉下一章〈/KeyWord〉
</GeneralRule>
需要说明的是, 站点规则可以是针对某一站点的所有网页都使用该规则, 预读规则中 可以有零个或多个站点规则; 网址规则可以是针对某一个特定的网页地址使用该规则, 预 读规则中可以有零个或多个网址规则; 而通用规则可以是当前网页没有匹配任何其他规则 时, 使用该规则, 预读规则中有且仅有一个通用规则。
以下是一个完整规则的举例:
<PreReadRules>
<GeneralRule>
〈KeyWord〉下一页〈/KeyWord〉
〈KeyWord〉下页〈/KeyWord〉
〈KeyWord〉下一章〈/KeyWord〉
〈KeyWord〉下一章〈/KeyWord〉
</GeneralRule>
<SiteRule>
<Domain>www. newsmth. net</Domain>
〈KeyWord〉上一页〈/KeyWord〉
</SiteRule>
<UrlRule>
<Url>http : //3g. qq. com/ index. jsp</Url>
〈KeyWord〉下一页〈/KeyWord〉
</UrlRule>
</PreReadRules>
207: 读取该预读链接指示的网页内容;
本领域技术人员可以获知, 为了提高预读效率, 客户端可对读取的网页内容进行缓存, 当用户点击该网页链接时 , 将缓存的网页内容提供给用户。
208: 该客户端记录该客户端的应用该预读规则后的浏览情况, 该客户端将该浏览情况 与该预读规则之间进行比对, 并将该预读规则的成功率上报给该服务器端。
在本实施例中, 当匹配某一规则进行预读后, 客户端将该浏览情况与该预读规则之间 进行比对, 如果用户点击使用了预读好的网页, 则称有效预读; 否则, 则称无效预读。 客 户端记录每次网页预读时使用的规则, 以及该次预读是否有效, 可以是由客户端定期 (例 如一个月一次) 上报, 或者由服务器主动获取。 服务器通过收集来自客户端的信息, 统计 后可以形成对现有规则的有效性判断, 而后可以优化后下发新的规则。 例如, 假设服务器 端设置的预读规则成功率阈值为 0. 7, 当客户端上报的该预读规则的成功率为 0. 8, 则说明 该预读规则的准确率高, 可利用率较高, 当客户端上报的该预读规则的成功率为 0. 3, 则说 明该预读规则的准确率低, 可利用率低, 需要对该预读规则进行调整, 本领域技术人员可 以获知, 该调整是通过对客户端以及应用该预读规则后读取页面等的比较, 并根据比较结 果将预读规则中的关键字或网址规则进行修订的过程。 该调整后的规则可以在客户端再次 向服务器请求预读规则时发送给客户端, 使得客户端根据调整后的规则更新原有的预读规 则。
本实施例提供的方法, 通过客户端从服务器端获取预读规则, 并根据预读规则和当前 网页链接进行预读, 避免了由于使用硬编码固定关键字造成的预读有效性低的情况, 达到 了根据当前页面的具体情况, 适时更新预读方式, 不仅节约了用户流量, 还提高了浏览的 速度和效率。
为了提高预读的灵活性,节约用户流量,本发明实施例提供了一种预读装置,参见图 3, 该装置包括:
获取模块 301, 用于打开网页时, 根据当前网页和预读规则获取预读链接;
读取模块 302, 用于读取该预读链接指示的网页内容。
参见图 4, 该装置还包括:
规则获取模块 303, 用于该客户端从服务器端获取预读规则。
参见图 5, 该规则获取模块 303包括:
请求单元 303a, 用于该客户端向服务器端请求预读规则, 并判断该服务器端保存的预 读规则与该客户端保存的预读规则是否相同, 如果否, 则利用该服务器端保存的预读规则 更新该客户端保存的预读规则。
规则获取模块 303, 还用于在从服务器端获取预读规则之后, 识别当前网页类型, 从服
务器端获取的预读规则中获取所述当前网页类型相应的预读规则。
其中, 规则获取模块 303 包括识别单元, 用于根据当前网页的域名或链接与预存的网 站信息分类进行查询, 得到该当前网页类型。
参见图 6, 该获取模块 301包括:
判断单元 301b, 用于判断该预读规则中是否包含与该当前网页匹配的网址规则, 如果 是, 则触发用于从该当前网页上获取与匹配的网址规则相应的链接作为预读链接的获取单 元 301c o
该判断单元 301b具体用于判断该预读规则中是否包含该当前网页的网址字段,如果是, 则该预读规则中包含与该当前网页匹配的网址规则; 如果否, 则该预读规则中不包含与该 当前网页匹配的网址规则。
该判断单元 301b包括:
判断子单元用于判断该当前网页中是否包含该匹配的网址规则中描述的关键字, 如果 是, 则将与该关键字对应的链接作为预读链接。
参见图 7, 该装置还包括:
上报模块 304, 用于记录应用该预读规则后的浏览情况, 并将该浏览情况与该预读规则 之间进行比对, 将该预读规则的成功率上报给该服务器端。
本发明实施例还提供了一种移动终端, 所述移动终端包括上述实施例中的任一种预读 装置。
优选地, 该移动终端可以为带有网络阅读功能的移动终端, 例如, ipad、 手机等。 本发明实施例提供的上述技术方案的全部或部分可以通过程序指令相关的硬件来完 成, 所述程序可以存储在可读取的存储介质中, 该存储介质包括: R0M、 RAM, 磁碟或者光 盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例, 并不用以限制本发明, 凡在本发明的精神和原则 之内, 所作的任何修改、 等同替换、 改进等, 均应包含在本发明的保护范围之内。