CN108062371A - 一种Android设备网页数据处理系统及其数据处理方法 - Google Patents
一种Android设备网页数据处理系统及其数据处理方法 Download PDFInfo
- Publication number
- CN108062371A CN108062371A CN201711313707.8A CN201711313707A CN108062371A CN 108062371 A CN108062371 A CN 108062371A CN 201711313707 A CN201711313707 A CN 201711313707A CN 108062371 A CN108062371 A CN 108062371A
- Authority
- CN
- China
- Prior art keywords
- page
- module
- data
- webpage
- data processing
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
Abstract
本发明公开了一种Android设备网页数据处理系统及其数据处理方法,系统包括网页账号管理模块、网页数据处理模块,持久化模块,每一个模块均可由Java语言实现对应的软件模块,从而实现可在Android设备上运行的网页数据处理系统。网页账号管理模块实现在Android设备上智能保存网页的账号和登录操作;网页数据处理模块实现对网页代码的解析;持久化模块实现在Android设备上对已下载的网页数据的管理。基于上述系统,提出一种在Android设备上处理网页数据并显示的方法。本发明能够处理不兼容移动端的网页数据,简化用户操作,节约系统资源,减少网页加载的时间,提高了移动办公的效率。
Description
技术领域
本发明涉及计算机网络技术领域,尤其是指一种Android设备网页数据处理系统及其数据处理方法。
背景技术
目前,许多高校、科研机构以及政企单位的网站为了系统的稳定性,仍在使用一些过时的浏览器访问技术和旧的服务器登录认证方法。而随着移动互联网的发展与成熟,人们希望能够在智能手机上访问这些网页,进行移动办公。以Android智能手机为例,系统自带的浏览器和WebView组件虽然可以访问这些服务器上的数据,但是存在兼容性问题:为PC端编写的前端页面在Android手机上可能显示不全或者错乱,使用者需要进行复杂的缩放操作,浏览页面的文字和图片很不方便,点击按钮和提交表单也很容易出错。
面对此类问题,一种解决方案是升级服务器的前端代码,为Android设备做适配,这种方案需要对系统的架构和页面代码进行重构。在快速迭代的互联网公司,这种方案是可行的;但是对于追求系统稳定性的高校政企单位,对服务器的升级更新存在滞后性,只对少数信息展示页面进行移动端的适配还可以做到,一些早期的核心业务难以对移动端提供兼容性,此时这种方案并不适用。另一种方案是为服务器定制开发一款Android应用,用于解析和访问特定服务器上的数据。这种方案解决了通用浏览器的页面兼容性问题,但是存在以下两个问题。一、如果为每个服务器单独开发一个Android应用来访问数据,开发的人力成本很大;二、Android设备的存储空间和网络流量资源有限,在Android设备上安装大量同质化的应用程序也是不可行的。综合以上的问题,对于高校政企单位的移动办公,需要提出一种对访问服务器数据具有兼容性、能够节省移动设备资源、对用户操作具有便捷性的解决方案。
发明内容
本发明的目的在于克服现有技术的缺点与不足,提出了一种Android设备网页数据处理系统及其数据处理方法,解决早期版本服务器系统因为没有对Android设备做适配导致的网页在Android设备通用浏览器上显示不全,用户输入操作繁琐甚至失效的问题,能够完善Android系统自带的WebView组件在这方面欠缺的功能,自动处理不同服务器的登录认证,根据设置的规则解析显示服务器返回的数据,优化用户在Android设备上向服务器提交表单的输入方式,简化用户操作。
为实现上述目的,本发明所提供的技术方案如下:
一种Android设备网页数据处理系统,包括:
网页账号管理模块,用于实现在Android设备上智能保存网页的账号和登录操作;
网页数据处理模块,用于实现在Android设备上根据网页代码的关键字和地址特征,决定数据显示加载和显示网页所采用的策略,对网页代码的解析,按照设置的规则将数据分类聚合,以适配移动端的规则处理和显示各类型数据;
持久化模块,用于实现在Android设备上建立本地数据库,保存网页的账号密码信息以及已下载的网页数据,对上述两个模块提供数据持久化的功能。
所述网页账号管理模块包括有配置文件读取模块、网络请求模块、web页面解析模块、cookie管理模块、路径优化模块,其中:
所述配置文件读取模块从数据库中读取需要登录的网页对应的账号密码信息以及登录的页面路径;
所述网络请求模块负责发送网络请求以及处理服务器的应答;
所述web页面解析模块负责解析登录过程中的html代码,和网络请求模块一起完成登录过程;
所述cookie管理模块负责保存最终页面的url地址和会话cookie;
所述路径优化模块通过多次执行登录过程并去除不必要的页面跳转实现对登录过程的http请求和页面跳转进行优化。
所述网页数据处理模块包括数据类型判断模块、图文信息显示模块、点击组件输入模块、表单组件输入模块、下载资源管理模块,其中:
所述数据类型判断模块处理经过登录认证过程的资源页面;通过对页面url地址和网页html代码特征进行分析,如果页面的二级域名为m,以及html标签中含有特定关键字,说明页面数据已经为Android设备适配,此时采用Android设备通用的WebView组件进行加载和显示网页,否则使用定制的网页数据显示模块来加载和显示网页;
所述图文信息显示模块对网页html代码进行解析,按照系统配置的规则将页面数据分类聚合,默认规则将数据为以下四类:①文字段落,②图片组,③可点击组件,④需填充的表单;对于文字段落,将属于同一段落文字的文字信息集中显示在一个能够滑动显示的文字布局视图;对于图片组,保存图片的链接并分组,每组以符合特性的图片布局视图显示;对于点击组件和填充表单,需要生成对应布局视图并且绑定处理事件的代码;html代码中的数据转化为Android平台的视图组件,实现在Android设备上的显示和输入操作优化;
所述点击组件输入模块对对应html代码数据进行解析,得到组件绑定的js函数名以及组件显示的内容信息,根据上述信息,生成一个Android平台的TextView视图组件,设置相应的显示内容,并且添加对应的Android点击监听事件,事件的内容为调用WebView组件执行上述js函数;
所述表单组件输入模块对对应html代码数据进行解析,读取html代码中的form标签中的input元素,解析得到表单中变量的键值对,对应每一个键值对生成一个Android平台的EditView视图组件,其中EditView组件的提示值设置为键值对的键,EditView组件得到的输入值设置为键值对的值,显示在一个能够滑动和点击的布局视图中;
所述下载资源管理模块负责与持久化模块交互,在发送网络请求下载资源前先查询持久化模块中是否有对应的缓存,如果已经存在,则直接读取缓存,节约系统资源和网络流量。
所述持久化模块在Android设备上建立本地数据库,为网页账号管理模块和网页数据处理模块提供数据持久化的功能,本地数据库包括账号信息数据库、服务器信息数据库、页面路径数据库和本地缓存数据库,其中:
所述账号信息数据库存储网页对应的账号密码信息,当手动输入账号密码信息并登录成功后,相关信息保存在账号信息数据库中,之后的登录能够直接从本地数据库查询账号密码信息,不再需要手动输入;
所述服务器信息数据库存储网页对应的登录页面和资源页面的URL和页面解析结果,其中登录页面为第一次打开网页时的页面,保存的解析结果为输入账号和密码信息的页面代码关键字,资源页面为登录认证成功后的最终页面,保存的解析结果为资源页面代码的关键字;
所述页面路径数据库存储登录过程的页面跳转路径,此路径由所述网页账号管理模块的路径跳转优化模块在系统首次登录认证网页时生成并存储在页面路径数据库中,之后的登录过程参照数据库中的页面跳转路径执行;
所述本地缓存数据库存储浏览网页时下载的缓存文件,缓存文件需要记录最近使用的时间以及失效时间,当所述网页数据处理模块对某一资源发起网络请求前,先从本地缓存数据库中检查是否存在未失效的缓存文件,有则直接读取缓存文件,当本地缓存数据库的空间超出指定的阈值时,按照优先淘汰最近最少使用的原则清理缓存。
上述Android设备网页数据处理系统的数据处理方法,包括以下步骤:
S1、在Android设备上运行系统,进入网页账号管理模块,设置需要访问的网页,首次登录需要配置账号密码信息,系统在后台执行登录过程,记录服务器的应答和优化页面跳转,并将过程中的关键信息保存在数据库中;非首次登录不需要输入账号密码信息,系统根据保存的信息执行登录过程;登录认证成功之后,得到认证后的Cookie和页面URL,将数据传递给网页数据处理模块;
S2、网页数据处理模块中数据类型判断模块通过对页面url地址和网页html代码特征进行分析,如果页面代码符合指定特征:二级域名为m、html标签中含有特定标签,说明页面数据页面属于兼容PC端和移动端的响应式布局页面或者属于移动端定制页面,已经为Android设备适配,此时采用Android设备通用的WebView组件进行加载和显示网页,否则网页数据显示模块自行加载和显示网页;
S3、网页数据显示模块加载页面数据,根据设置的规则将页面信息聚合分类显示,默认规则将数据为以下四类:①文字段落,②图片组,③可点击组件,④需填充的表单;对于文字段落,将属于同一段落文字的文字信息集中显示在一个能够滑动显示的文字布局视图;对于图片组,保存图片的链接并分组,每组以符合特性的图片布局视图显示;对于点击组件和填充表单,需要生成对应布局视图并且绑定处理事件的代码;html代码中的数据转化为Android平台的视图组件,实现在Android设备上的显示和输入操作优化;
S4、持久化模块统一管理WebView组件和数据显示模块的本地缓存和资源下载操作;首先,持久化模块初始化一个本地代理服务器,WebView组件和数据显示模块的网络请求统一发送给本地代理服务器,发送网络请求时,持久化模块拦截这个请求,并将URL处理为本地代理服务器的对应URL,如果本地代理服务器的文件目录下含有相关的资源并且资源还未失效,则直接将缓存的数据返回给请求的模块并且更新该数据的最近被使用时间;否则进行真正的网络请求,向服务器请求数据;得到新的数据后,本地代理服务器给数据标记最近被使用时间并保存在对应的缓存文件夹,之后检查所有缓存数据的大小,如果超出设置的阈值,则根据最近被使用时间的信息清理最早的缓存。
步骤S1中的登录过程分为首次登录和非首次登录两种情形,首次登录时配置文件读取模块读取需要登录的网页对应的账号密码信息,在后台执行登录并生成最优页面跳转路径,非首次登录读账号密码信息以及首次登录成功后生成的最优页面跳转路径。
步骤S3中的页面信息聚合分类显示规则能够根据网页具体代码特征进行配置,默认规则能够处理常见网页中的文字段落、图片组、可点击组件和提交表单,如果网页含有其它特征的代码,能够通过设置相应的规则进行网页数据处理和显示。
本发明与现有技术相比,具有如下优点与有益效果:
1、通过在Android设备上智能保存网页和账号的数据和登录过程,实现对不同网站进行自动登录;避免了在浏览器上手动输入账号和密码的繁琐;对于登录认证过程中遇到的页面跳转在系统后台进行优化,提高页面的加载速度,减少了程序界面的响应延迟。
2、通过网页代码的关键字和地址特征采取不同的数据显示策略;遇到没有适配移动端的网页数据时,由系统配置的解析模块来处理页面数据:与WebView组件通过用户的触摸操作手动缩小放大来显示页面数据的方式不同,系统不会在一个屏幕内完全呈现整个页面,而是将页面的内容以文字段落、图片组、填充表单与提交按钮等形式进行分类和聚合;分类后的数据以合适的大小显示在移动设备屏幕上,便于使用者更清楚地寻找关键信息;如果需要浏览当前屏幕内没有找到关键信息或者需要切换数据分类,使用者可以通过Android设备上的滑动操作来便捷地切换数据分类,显示其余的内容。
3、通过在Android设备上申请一定大小的存储空间对网页数据进行缓存,在加载网页数据时读取缓存,加快了打开网页的速度,避免重复下载大容量数据,节约了网络流量的消耗。
附图说明
图1为系统各个模块的关系示意图。
图2为系统各个模块的调用过程示意图。
图3为网页账号管理部分的流程示意图。
图4为登录认证过程的页面解析关键字实例图。
图5为数据处理过程的默认规则实例图。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
本实施例所提供的Android设备网页数据处理系统,是使用AndroidStudio软件和Java语言开发的在Android设备上运行的网页数据处理系统,如图1和图2所示,系统通过内部模块和WebView组件实现在Android设备上的网页数据处理。它包括有:
网页账号管理模块,主要实现在Android设备上智能保存网页的账号和登录操作;
网页数据显示模块,主要实现对网页代码的解析,按照设置的规则将数据分类聚合,以适配移动端的规则处理和显示各类型数据;
持久化模块,主要实现在Android设备上对已下载的网页数据的管理,节约系统资源,减少下次启动时加载的时间。
所述网页账号管理模块包括有配置文件读取模块、网络请求模块、web页面解析模块、cookie管理模块、路径优化模块,其中:
所述配置文件读取模块从数据库中读取需要登录的网页对应的账号密码信息以及登录的页面路径;
所述网络请求模块负责发送网络请求以及处理服务器的应答;
所述web页面解析模块负责解析登录过程中的html代码,和网络请求模块一起完成登录过程;
所述cookie管理模块负责保存最终页面的url地址和会话cookie;
所述路径优化模块通过多次执行登录过程并去除不必要的页面跳转实现对登录过程的http请求和页面跳转进行优化。
所述网页数据处理模块包括数据类型判断模块、图文信息显示模块、点击组件输入模块、表单组件输入模块、下载资源管理模块,其中:
所述数据类型判断模块处理经过登录认证过程的资源页面;通过对页面url地址和网页html代码特征进行分析,如果页面的二级域名为m,以及html标签中含有特定关键字,说明页面数据已经为Android设备适配,此时采用Android设备通用的WebView组件进行加载和显示网页,否则使用定制的网页数据显示模块来加载和显示网页;
所述图文信息显示模块对网页html代码进行解析,按照系统配置的规则将页面数据分类聚合,默认规则将数据为以下四类:①文字段落,②图片组,③可点击组件,④需填充的表单;对于文字段落,将属于同一段落文字的文字信息集中显示在一个能够滑动显示的文字布局视图;对于图片组,保存图片的链接并分组,每组以符合特性的图片布局视图显示;对于点击组件和填充表单,需要生成对应布局视图并且绑定处理事件的代码;html代码中的数据转化为Android平台的视图组件,实现在Android设备上的显示和输入操作优化;
所述点击组件输入模块对对应html代码数据进行解析,得到组件绑定的js函数名以及组件显示的内容信息,根据上述信息,生成一个Android平台的TextView视图组件,设置相应的显示内容,并且添加对应的Android点击监听事件,事件的内容为调用WebView组件执行上述js函数;
所述表单组件输入模块对对应html代码数据进行解析,读取html代码中的form标签中的input元素,解析得到表单中变量的键值对,对应每一个键值对生成一个Android平台的EditView视图组件,其中EditView组件的提示值设置为键值对的键,EditView组件得到的输入值设置为键值对的值,显示在一个能够滑动和点击的布局视图中;
所述下载资源管理模块负责与持久化模块交互,在发送网络请求下载资源前先查询持久化模块中是否有对应的缓存,如果已经存在,则直接读取缓存,节约系统资源和网络流量。
所述持久化模块在Android设备上建立本地数据库,为网页账号管理模块和网页数据处理模块提供数据持久化的功能,本地数据库包括账号信息数据库、服务器信息数据库、页面路径数据库和本地缓存数据库,其中:
所述账号信息数据库存储网页对应的账号密码信息,当手动输入账号密码信息并登录成功后,相关信息保存在账号信息数据库中,之后的登录能够直接从本地数据库查询账号密码信息,不再需要手动输入;
所述服务器信息数据库存储网页对应的登录页面和资源页面的URL和页面解析结果,其中登录页面为第一次打开网页时的页面,保存的解析结果为输入账号和密码信息的页面代码关键字,资源页面为登录认证成功后的最终页面,保存的解析结果为资源页面代码的关键字;
所述页面路径数据库存储登录过程的页面跳转路径,此路径由所述网页账号管理模块的路径跳转优化模块在系统首次登录认证网页时生成并存储在页面路径数据库中,之后的登录过程参照数据库中的页面跳转路径执行;
所述本地缓存数据库存储浏览网页时下载的缓存文件,缓存文件需要记录最近使用的时间以及失效时间,当所述网页数据处理模块对某一资源发起网络请求前,先从本地缓存数据库中检查是否存在未失效的缓存文件,有则直接读取缓存文件,当本地缓存数据库的空间超出指定的阈值时,按照优先淘汰最近最少使用的原则清理缓存。
本实施例公开一种基于上述系统实现的Android设备网页数据处理方法,包括以下步骤:
S1、首先在Android设备上运行上述系统,选择需要访问的服务器。首次登录需要配置账号和密码信息,系统在后台执行登录过程,记录服务器的应答和页面跳转,并将过程中的关键信息保存。之后的登录不需要用户输入账号和密码,系统根据保存的信息执行登录过程。登录认证成功之后,得到认证后的Cookie和页面URL,将数据传递给WebView组件。登录认证流程如图3所示,细化步骤如下:1.1、读取配置文件,得到目标服务器地址以及账号和密码信息;1.2、向目标服务器发出请求,如图4所示,解析不同版本服务器中响应码为302重定向或响应码为200的页面中的js代码,得到中央认证服务的登录页面;1.3、解析登录页面的代码,得到form表单提交或AJAX的登录请求的参数,用配置的账号密码提交登录请求;1.4、提交请求后,服务器的应答可能包含多次页面跳转。记录服务器返回的Cookie,并访问配置的资源页面,如果成功访问资源,说明登录成功;1.5、以成功访问资源页面为前提,优化页面跳转过程。
S2、网页类型判断程序通过对页面url地址和网页html代码特征进行分析,如果页面的二级域名为m,以及html标签中含有特定标签<meta name="viewport"content="initial-scale=1,maximum-scale=1,user-scalable=no,width=device-width">,说明页面数据页面属于兼容PC端和移动端的响应式布局页面或者属于移动端定制页面,已经为Android设备适配,此时采用Android设备通用的WebView组件进行加载和显示网页;在这种情形下,WebView组件同步Cookie,加载认证后的页面;否则使用网页数据显示模块来加载和显示网页。
S3、数据显示模块加载页面数据,根据设置的规则将页面信息聚合分类显示。规则的设置具有扩展性,可以为服务器添加指定规则。如果没有指定规则,则采用默认规则。如图5所示,默认规则如下:读取html代码中的<p>标签的内容,根据字符的值和数量分析是否为文字段落。将属于同一段落文字的文字信息集中显示在一个可以滑动显示的文字布局视图,默认采用对应Android平台的组件ScrollView;读取html代码中的<img>标签的url,保存图片的链接并分组,每组以符合特性的图片布局视图显示。默认规则包含轮播图(对应Android平台的组件ViewPager)和网格图(对应Android平台的组件GridView),如果图片组的数量小于5,使用横向滑动的轮播图显示,否则使用可以显示大量图片的网格图。对接收点击事件的组件,首先读取组件绑定的js函数名,例如读取一个按钮组件的代码,<buttontype="button"class="btn btn-primary btn-sm"onclick="login()">登录</button>,得知对应的js函数为login(),组件显示的内容为“登录”。此时数据显示模块根据上述信息,生成一个Android平台的TextView,显示的内容为“登录”,并且添加对应的点击监听事件,事件的内容为调用WebView组件执行js代码中的login()函数。对于提交表单组件,读取html代码中的form标签中的input元素,解析得到表单中变量的键值对,对于每一个变量生成EditText组件。EditText组件的hint值为键值对的键,用户对EditText输入的内容保存为键值对的值。至此,将所有生成的TextView和EditText组件放大至合适尺寸,显示在一个可以滑动和点击的布局视图中(对应Android平台中由EditView、TextView复合组成的ListView)。至此,对整个页面的信息根据默认规则完成了分类聚合,html代码中的数据转化为Android平台的视图组件,实现了在Android设备上的显示和输入操作优化。
S4、持久化模块统一管理WebView组件和数据显示模块的本地缓存和资源下载操作。首先,持久化模块初始化一个本地代理服务器,ip地址设置为127.0.0.1,默认端口为5556。WebView组件和数据显示模块的网络请求统一发送给本地代理服务器,例如发送一个网络请求http://www.server.com/resource,持久化模块拦截这个请求,并将URL处理为本地代理服务器的对应URL:http://127.0.0.1:5556/resource,如果本地代理服务器的文件目录下含有相关的resource资源并且资源还在expires规定的时间内,则直接将缓存的数据返回给请求的模块并且更新该数据的最近被使用时间;否则进行真正的网络请求,向服务器请求数据。得到新的数据后,本地代理服务器给数据标记最近被使用时间并保存在对应的缓存文件夹,之后检查所有缓存数据的大小,如果超出了设置的阈值,则根据最近被使用时间的信息清理最早的缓存。通过持久化模块对缓存的统一管理,避免了相同资源的反复下载,节省了网络流量,同时提高了网页的加载速度。
以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
Claims (7)
1.一种Android设备网页数据处理系统,其特征在于,包括:
网页账号管理模块,用于实现在Android设备上智能保存网页的账号和登录操作;
网页数据处理模块,用于实现在Android设备上根据网页代码的关键字和地址特征,决定数据显示加载和显示网页所采用的策略,对网页代码的解析,按照设置的规则将数据分类聚合,以适配移动端的规则处理和显示各类型数据;
持久化模块,用于实现在Android设备上建立本地数据库,保存网页的账号密码信息以及已下载的网页数据,对上述两个模块提供数据持久化的功能。
2.根据权利要求1所述的一种Android设备网页数据处理系统,其特征在于:所述网页账号管理模块包括有配置文件读取模块、网络请求模块、web页面解析模块、cookie管理模块、路径优化模块,其中:
所述配置文件读取模块从数据库中读取需要登录的网页对应的账号密码信息以及登录的页面路径;
所述网络请求模块负责发送网络请求以及处理服务器的应答;
所述web页面解析模块负责解析登录过程中的html代码,和网络请求模块一起完成登录过程;
所述cookie管理模块负责保存最终页面的url地址和会话cookie;
所述路径优化模块通过多次执行登录过程并去除不必要的页面跳转实现对登录过程的http请求和页面跳转进行优化。
3.根据权利要求1所述的一种Android设备网页数据处理系统,其特征在于:所述网页数据处理模块包括数据类型判断模块、图文信息显示模块、点击组件输入模块、表单组件输入模块、下载资源管理模块,其中:
所述数据类型判断模块处理经过登录认证过程的资源页面;通过对页面url地址和网页html代码特征进行分析,如果页面的二级域名为m,以及html标签中含有特定关键字,说明页面数据已经为Android设备适配,此时采用Android设备通用的WebView组件进行加载和显示网页,否则使用定制的网页数据显示模块来加载和显示网页;
所述图文信息显示模块对网页html代码进行解析,按照系统配置的规则将页面数据分类聚合,默认规则将数据为以下四类:①文字段落,②图片组,③可点击组件,④需填充的表单;对于文字段落,将属于同一段落文字的文字信息集中显示在一个能够滑动显示的文字布局视图;对于图片组,保存图片的链接并分组,每组以符合特性的图片布局视图显示;对于点击组件和填充表单,需要生成对应布局视图并且绑定处理事件的代码;html代码中的数据转化为Android平台的视图组件,实现在Android设备上的显示和输入操作优化;
所述点击组件输入模块对对应html代码数据进行解析,得到组件绑定的js函数名以及组件显示的内容信息,根据上述信息,生成一个Android平台的TextView视图组件,设置相应的显示内容,并且添加对应的Android点击监听事件,事件的内容为调用WebView组件执行上述js函数;
所述表单组件输入模块对对应html代码数据进行解析,读取html代码中的form标签中的input元素,解析得到表单中变量的键值对,对应每一个键值对生成一个Android平台的EditView视图组件,其中EditView组件的提示值设置为键值对的键,EditView组件得到的输入值设置为键值对的值,显示在一个能够滑动和点击的布局视图中;
所述下载资源管理模块负责与持久化模块交互,在发送网络请求下载资源前先查询持久化模块中是否有对应的缓存,如果已经存在,则直接读取缓存,节约系统资源和网络流量。
4.根据权利要求1所述的一种Android设备网页数据处理系统,其特征在于:所述持久化模块在Android设备上建立本地数据库,为网页账号管理模块和网页数据处理模块提供数据持久化的功能,本地数据库包括账号信息数据库、服务器信息数据库、页面路径数据库和本地缓存数据库,其中:
所述账号信息数据库存储网页对应的账号密码信息,当手动输入账号密码信息并登录成功后,相关信息保存在账号信息数据库中,之后的登录能够直接从本地数据库查询账号密码信息,不再需要手动输入;
所述服务器信息数据库存储网页对应的登录页面和资源页面的URL和页面解析结果,其中登录页面为第一次打开网页时的页面,保存的解析结果为输入账号和密码信息的页面代码关键字,资源页面为登录认证成功后的最终页面,保存的解析结果为资源页面代码的关键字;
所述页面路径数据库存储登录过程的页面跳转路径,此路径由所述网页账号管理模块的路径跳转优化模块在系统首次登录认证网页时生成并存储在页面路径数据库中,之后的登录过程参照数据库中的页面跳转路径执行;
所述本地缓存数据库存储浏览网页时下载的缓存文件,缓存文件需要记录最近使用的时间以及失效时间,当所述网页数据处理模块对某一资源发起网络请求前,先从本地缓存数据库中检查是否存在未失效的缓存文件,有则直接读取缓存文件,当本地缓存数据库的空间超出指定的阈值时,按照优先淘汰最近最少使用的原则清理缓存。
5.一种权利要求1至4任何一项所述Android设备网页数据处理系统的数据处理方法,其特征在于,包括以下步骤:
S1、在Android设备上运行系统,进入网页账号管理模块,设置需要访问的网页,首次登录需要配置账号密码信息,系统在后台执行登录过程,记录服务器的应答和优化页面跳转,并将过程中的关键信息保存在数据库中;非首次登录不需要输入账号密码信息,系统根据保存的信息执行登录过程;登录认证成功之后,得到认证后的Cookie和页面URL,将数据传递给网页数据处理模块;
S2、网页数据处理模块中数据类型判断模块通过对页面url地址和网页html代码特征进行分析,如果页面代码符合指定特征:二级域名为m、html标签中含有特定标签,说明页面数据页面属于兼容PC端和移动端的响应式布局页面或者属于移动端定制页面,已经为Android设备适配,此时采用Android设备通用的WebView组件进行加载和显示网页,否则网页数据显示模块自行加载和显示网页;
S3、网页数据显示模块加载页面数据,根据设置的规则将页面信息聚合分类显示,默认规则将数据为以下四类:①文字段落,②图片组,③可点击组件,④需填充的表单;对于文字段落,将属于同一段落文字的文字信息集中显示在一个能够滑动显示的文字布局视图;对于图片组,保存图片的链接并分组,每组以符合特性的图片布局视图显示;对于点击组件和填充表单,需要生成对应布局视图并且绑定处理事件的代码;html代码中的数据转化为Android平台的视图组件,实现在Android设备上的显示和输入操作优化;
S4、持久化模块统一管理WebView组件和数据显示模块的本地缓存和资源下载操作;首先,持久化模块初始化一个本地代理服务器,WebView组件和数据显示模块的网络请求统一发送给本地代理服务器,发送网络请求时,持久化模块拦截这个请求,并将URL处理为本地代理服务器的对应URL,如果本地代理服务器的文件目录下含有相关的资源并且资源还未失效,则直接将缓存的数据返回给请求的模块并且更新该数据的最近被使用时间;否则进行真正的网络请求,向服务器请求数据;得到新的数据后,本地代理服务器给数据标记最近被使用时间并保存在对应的缓存文件夹,之后检查所有缓存数据的大小,如果超出设置的阈值,则根据最近被使用时间的信息清理最早的缓存。
6.根据权利要求5所述的一种Android设备网页数据处理系统的数据处理方法,其特征在于:步骤S1中的登录过程分为首次登录和非首次登录两种情形,首次登录时配置文件读取模块读取需要登录的网页对应的账号密码信息,在后台执行登录并生成最优页面跳转路径,非首次登录读账号密码信息以及首次登录成功后生成的最优页面跳转路径。
7.根据权利要求5所述的一种Android设备网页数据处理系统的数据处理方法,其特征在于:步骤S3中的页面信息聚合分类显示规则能够根据网页具体代码特征进行配置,默认规则能够处理常见网页中的文字段落、图片组、可点击组件和提交表单,如果网页含有其它特征的代码,能够通过设置相应的规则进行网页数据处理和显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711313707.8A CN108062371A (zh) | 2017-12-12 | 2017-12-12 | 一种Android设备网页数据处理系统及其数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711313707.8A CN108062371A (zh) | 2017-12-12 | 2017-12-12 | 一种Android设备网页数据处理系统及其数据处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108062371A true CN108062371A (zh) | 2018-05-22 |
Family
ID=62138154
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711313707.8A Pending CN108062371A (zh) | 2017-12-12 | 2017-12-12 | 一种Android设备网页数据处理系统及其数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108062371A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109597950A (zh) * | 2018-10-25 | 2019-04-09 | 北京辰森世纪科技股份有限公司 | 应用程序的网页处理、网页数据提供方法及装置 |
CN110209982A (zh) * | 2019-05-28 | 2019-09-06 | 北京金堤科技有限公司 | 页面数据处理和装置 |
CN110267077A (zh) * | 2019-04-26 | 2019-09-20 | 阿里巴巴集团控股有限公司 | 离线缓存方法、装置、终端及可读存储介质 |
CN110704767A (zh) * | 2019-09-30 | 2020-01-17 | 北京字节跳动网络技术有限公司 | 页面打开方法、装置、电子设备及存储介质 |
US10880583B2 (en) | 2019-04-26 | 2020-12-29 | Advanced New Technologies Co., Ltd. | Method, apparatus, terminal, and readable storage medium for offline caching |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102202044A (zh) * | 2011-02-25 | 2011-09-28 | 北京兴宇中科科技开发股份有限公司 | 便携式云存储方法和设备 |
CN102314428A (zh) * | 2010-06-30 | 2012-01-11 | 上海视加信息科技有限公司 | 一种分布式构造网页的方法 |
CN102495855A (zh) * | 2011-11-21 | 2012-06-13 | 奇智软件(北京)有限公司 | 自动登录方法及装置 |
US20140053058A1 (en) * | 2012-08-16 | 2014-02-20 | Qualcomm Incorporated | Predicting the usage of document resources |
CN104392009A (zh) * | 2014-12-19 | 2015-03-04 | 北京奇虎科技有限公司 | 获取移动站点链接地址的方法和装置 |
CN104573001A (zh) * | 2015-01-07 | 2015-04-29 | 北京联合大学 | 一种基于移动终端的网页数据采集及归类的方法 |
CN104660688A (zh) * | 2015-02-03 | 2015-05-27 | 百度在线网络技术(北京)有限公司 | 一种获取登录信息的方法与装置 |
CN106202179A (zh) * | 2016-06-27 | 2016-12-07 | 北京奇虎科技有限公司 | 一种页面加载方法和装置 |
CN106547833A (zh) * | 2016-10-11 | 2017-03-29 | 乐视控股(北京)有限公司 | 网页浏览方法及装置 |
-
2017
- 2017-12-12 CN CN201711313707.8A patent/CN108062371A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314428A (zh) * | 2010-06-30 | 2012-01-11 | 上海视加信息科技有限公司 | 一种分布式构造网页的方法 |
CN102202044A (zh) * | 2011-02-25 | 2011-09-28 | 北京兴宇中科科技开发股份有限公司 | 便携式云存储方法和设备 |
CN102495855A (zh) * | 2011-11-21 | 2012-06-13 | 奇智软件(北京)有限公司 | 自动登录方法及装置 |
US20140053058A1 (en) * | 2012-08-16 | 2014-02-20 | Qualcomm Incorporated | Predicting the usage of document resources |
CN104392009A (zh) * | 2014-12-19 | 2015-03-04 | 北京奇虎科技有限公司 | 获取移动站点链接地址的方法和装置 |
CN104573001A (zh) * | 2015-01-07 | 2015-04-29 | 北京联合大学 | 一种基于移动终端的网页数据采集及归类的方法 |
CN104660688A (zh) * | 2015-02-03 | 2015-05-27 | 百度在线网络技术(北京)有限公司 | 一种获取登录信息的方法与装置 |
CN106202179A (zh) * | 2016-06-27 | 2016-12-07 | 北京奇虎科技有限公司 | 一种页面加载方法和装置 |
CN106547833A (zh) * | 2016-10-11 | 2017-03-29 | 乐视控股(北京)有限公司 | 网页浏览方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109597950A (zh) * | 2018-10-25 | 2019-04-09 | 北京辰森世纪科技股份有限公司 | 应用程序的网页处理、网页数据提供方法及装置 |
CN110267077A (zh) * | 2019-04-26 | 2019-09-20 | 阿里巴巴集团控股有限公司 | 离线缓存方法、装置、终端及可读存储介质 |
CN110267077B (zh) * | 2019-04-26 | 2020-11-06 | 创新先进技术有限公司 | 离线缓存方法、装置、终端及可读存储介质 |
US10880583B2 (en) | 2019-04-26 | 2020-12-29 | Advanced New Technologies Co., Ltd. | Method, apparatus, terminal, and readable storage medium for offline caching |
CN110209982A (zh) * | 2019-05-28 | 2019-09-06 | 北京金堤科技有限公司 | 页面数据处理和装置 |
CN110704767A (zh) * | 2019-09-30 | 2020-01-17 | 北京字节跳动网络技术有限公司 | 页面打开方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108062371A (zh) | 一种Android设备网页数据处理系统及其数据处理方法 | |
CN104111944B (zh) | 页面处理方法和装置以及页面生成方法和装置 | |
CN103150513B (zh) | 拦截应用程序中的植入信息的方法及装置 | |
US7599956B2 (en) | Reusable online survey engine | |
US8725794B2 (en) | Enhanced website tracking system and method | |
CA2734774C (en) | A user-transparent system for uniquely identifying network-distributed devices without explicitly provided device or user identifying information | |
US9911143B2 (en) | Methods and systems that categorize and summarize instrumentation-generated events | |
CN102597993B (zh) | 利用统一资源标识符管理应用状态信息 | |
US20120151329A1 (en) | On-page manipulation and real-time replacement of content | |
US20130136253A1 (en) | System and method for tracking web interactions with real time analytics | |
WO2014059183A2 (en) | Methods and automated systems for testing, optimization, and analysis that preserve continuity in identities and status of users who access remote information from different contexts | |
EP2399209A1 (en) | Content access platform and methods and apparatus providing access to internet content for heterogeneous devices | |
US9225834B2 (en) | Contact center skills modeling using customer relationship management (CRM) incident categorization structure | |
CN108805694A (zh) | 信贷咨询服务方法、装置、设备及计算机可读存储介质 | |
CN107809383A (zh) | 一种基于mvc的路径映射方法及装置 | |
Al-Masri et al. | MobiEureka: an approach for enhancing the discovery of mobile web services | |
EP2798535A1 (en) | Method and apparatus for providing web pages | |
US20200226615A1 (en) | Customer service representative dashboard application | |
CN108701130A (zh) | 使用自动浏览群集更新提示模型 | |
CN102968428A (zh) | 用于通过远程应用的高效数据提取的方法和系统 | |
KR101035327B1 (ko) | 로그 분석을 이용한 자동 진화형 웹페이지 제공 방법 및 시스템 | |
WO2021072742A1 (en) | Assessing an impact of an upgrade to computer software | |
CN107105336A (zh) | 数据处理方法及数据处理装置 | |
CN108334619A (zh) | 一种数据采集方法、装置、计算设备及存储介质 | |
CN104270443B (zh) | 一种能够动态解析Web应用的云计算系统及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180522 |
|
RJ01 | Rejection of invention patent application after publication |