CN111680247B - 网页字符串的本地调用方法、装置、设备及存储介质 - Google Patents

网页字符串的本地调用方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111680247B
CN111680247B CN202010351170.XA CN202010351170A CN111680247B CN 111680247 B CN111680247 B CN 111680247B CN 202010351170 A CN202010351170 A CN 202010351170A CN 111680247 B CN111680247 B CN 111680247B
Authority
CN
China
Prior art keywords
character string
target
string
source code
code
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
Application number
CN202010351170.XA
Other languages
English (en)
Other versions
CN111680247A (zh
Inventor
叶远达
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Saiante Technology Service Co Ltd
Original Assignee
Shenzhen Saiante Technology Service Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Saiante Technology Service Co Ltd filed Critical Shenzhen Saiante Technology Service Co Ltd
Priority to CN202010351170.XA priority Critical patent/CN111680247B/zh
Publication of CN111680247A publication Critical patent/CN111680247A/zh
Application granted granted Critical
Publication of CN111680247B publication Critical patent/CN111680247B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及网页配置领域,公开了一种网页字符串的本地调用方法、装置、设备及存储介质。网页字符串的本地调用方法包括:向服务端发起网页浏览请求;接收服务端响应所述网页浏览请求所返回的第一页面源代码;提取所述第一页面源代码中满足预置字符串规则的字符串,得到目标字符串;根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码;渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串。本发明将源代码中无法调用的字符串转换为可被点击并跳转至目标界面的目标标签代码,从而实现网页字符串的本地调用。

Description

网页字符串的本地调用方法、装置、设备及存储介质
技术领域
本发明涉及网页配置领域,尤其涉及一种网页字符串的本地调用方法、装置、设备及存储介质。
背景技术
在互联网和大数据蓬勃发展的环境下,越来越多的公司和机构为提供网络服务,纷纷开发自己的官网,给用户带来了方便快捷的服务。一般网页上显示的信息非常庞大且驳杂,包括电话号码、通讯地址、邮箱等等。
在很多网站上这些信息都是以不可点击调用的字符串形式存在。当用户想要使用这些字符串或进一步了解相关信息,需要进行繁琐的操作。如用户想要拨打某个网站记录的联系电话,需要先对电话号码进行复制,然后在拨号界面粘贴,再进行进一步的操作。或者用户想要打开页面上提到的某网站,需要先将页面上网站名称进行复制,然后打开浏览器,通过搜索引擎搜索到对应的网站,再打开网站进行浏览,给用户带来了不便利的体验。
发明内容
本发明的主要目的在于解决本地应用无法调用网页页面上字符串的问题。
本发明第一方面提供了一种网页字符串的本地调用方法,包括:
向服务端发起网页浏览请求;
接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
提取所述第一页面源代码中满足预置字符串规则的字符串,得到目标字符串;
根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码;
渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串。
可选的,在本发明第一方面的第一种实现方式中,所述目标标签代码包括所述目标字符串对应的目标超链接地址、预置通讯协议和预置监听事件属性,所述预置监听事件属性包括监听对象和监听类型。
可选的,在本发明第一方面的第二种实现方式中,所述提取所述第一页面源代码中满足预置字符串规则的字符串,得到目标字符串包括:
遍历所述第一页面源代码中的字符串;
判断当前遍历的字符串是否符合预置字符串规则;
若当前遍历的字符串符合预置字符串规则,则提取所述字符中的字符串作为目标字符串,并确定所述目标字符串对应的字符串类型,其中,所述字符串类型包括可变字符串和固定字符串。
可选的,在本发明第一方面的第三种实现方式中,所述字符串规则包括:可变字符串规则和固定字符串规则;
其中,所述可变字符串规则为:若当前遍历的字符串满足预置正则表达式,则确定当前遍历的字符串为可变字符串类型;所述固定字符串规则为:若当前遍历的字符串与预置固定字符串库中的字符串匹配,则确定待提取对象为固定字符串类型。
可选的,在本发明第一方面的第四种实现方式中,所述根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码包括:
当所述目标字符串为可变字符串类型时,根据所述目标字符串对应的所述正则表达式,确定对应的第一标签代码,其中,所述第一标签代码包括预置地址变量和预置字符串变量;
将所述目标字符串赋值至所述字符串变量和所述字符串变量,得到所述目标字符串对应的目标超链接地址和目标标签代码;
将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码。
可选的,在本发明第一方面的第五种实现方式中,所述根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码包括:
当所述目标字符串为固定字符串类型时,确定所述目标字符串对应的预置第二标签代码库中第二标签代码,其中,所述第二标签代码包含预置目标超链接地址和预置字符串变量;
将所述目标字符串赋值至所述字符串变量,得到所述目标标签代码;
将所述字符串标签添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码。
可选的,在本发明第一方面的第六种实现方式中,所述渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串之后,还包括:
监听是否存在触发事件;
若存在,则对所述事件进行解析,获取所述事件对应的执行对象和事件类型;
判断所述执行对象是否为所述目标标签代码的监听对象;
若所述执行对象为所述目标标签代码的监听对象,则判断所述事件类型是否为所述目标标签代码的监听类型;
若所述事件类型为所述目标标签代码的监听类型,则基于所述通讯协议,跳转至所述目标超链接地址对应的应用界面。
本发明第二方面提供了一种网页字符串的本地调用装置,所述网页字符串的本地调用装置包括:
请求模块,用于向服务端发起网页浏览请求;
接收模块,用于接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
提取模块,用于提取所述第一页面源代码中,满足预置字符串规则的字符串,得到目标字符串;
处理模块,用于根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码;
显示模块,用于渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串。
可选的,在本发明第二方面的第一种实现方式中,所述目标标签代码包括预置通讯协议和预置监听事件属性,所述预置监听事件属性包括监听对象和监听类型。
可选的,在本发明第二方面的第二种实现方式中,所述提取单元包括:
遍历单元,用于遍历所述第一页面源代码中的字符串;
判断单元,用于判断当前遍历的字符串是否符合预置字符串规则;
提取单元,用于若当前遍历的字符串符合预置字符串规则,则提取所述字符中的字符串作为目标字符串,并确定所述目标字符串对应的字符串类型,其中,所述字符串类型包括可变字符串和固定字符串,所述字符串规则包括:可变字符串规则和固定字符串规则;
其中,所述可变字符串规则为:若当前遍历的字符串满足预置正则表达式,则确定当前遍历的字符串为可变字符串类型;所述固定字符串规则为:若当前遍历的字符串与预置固定字符串库中的字符串匹配,则确定待提取对象为固定字符串类型。
可选的,在本发明第二方面的第三种实现方式中,所述处理模块包括第一处理单元,所述第一处理单元具体用于:
当所述目标字符串为可变字符串类型时,根据所述目标字符串对应的所述正则表达式,确定对应的第一标签代码,其中,所述第一标签代码包括预置地址变量和预置字符串变量;
将所述目标字符串赋值至所述字符串变量和所述字符串变量,得到所述目标字符串对应的目标超链接地址和目标标签代码;
将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码。
可选的,在本发明第二方面的第四种实现方式中,所述处理模块还包括第二处理单元,所述第二处理单元具体用于:
当所述目标字符串为固定字符串类型时,确定所述目标字符串对应的预置第二标签代码库中第二标签代码,其中,所述第二标签代码包含预置目标超链接地址和预置字符串变量;
将所述目标字符串赋值至所述字符串变量,得到所述目标标签代码;
将所述字符串标签添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码。
可选的,在本发明第二方面的第五种实现方式中,所述网页字符串的本地调用装置还包括监听模块,所述监听模块具体用于:
监听是否存在触发事件;
若存在,则对所述事件进行解析,获取所述事件对应的执行对象和事件类型;
判断所述执行对象是否为所述目标标签代码的监听对象;
若所述执行对象为所述目标标签代码的监听对象,则判断所述事件类型是否为所述目标标签代码的监听类型;
若所述事件类型为所述目标标签代码的监听类型,则基于所述通讯协议,跳转至所述目标超链接地址对应的应用界面。
本发明第三方面提供了一种网页字符串的本地调用设备,包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述网页字符串的本地调用设备执行上述的网页字符串的本地调用方法。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的网页字符串的本地调用方法。
本发明先提取源代码字符串中符合预置字符串规则的目标字符串,再生成目标字符串对应的目标标签代码,最后将目标标签代码替换源代码中对应的字符串。由于目标标签代码中包含目标字符串对应的目标超链接地址,因此当用户点击网页上的目标字符串时,会自动跳转至目标超链接地址,从而实现应用对字符串的调用,提升了网页上字符串的利用效率,为用户提供了舒适简便的服务体验。此外,本发明是在客户端实现,因此不依赖服务端对源代码的处理,节省后端服务器的压力和管理成本。同时,本发明还根据目标标签代码的类型,将目标字符串分为了可变字符串和固定字符串。可变字符串对应的目标超链接地址会根据目标字符串的内容而改变,例如目标字符串为电话号码,目标超链接地址为拨打该电话号码的链接。而固定字符串为某个网址名称、简称或别称,它对应的目标超链接地址为预置的网站地址。因此,本发明兼顾了不同的字符串类型,更具灵活性和广泛的应用性,可在网页或者网页交互应用界面实施。
附图说明
图1为本发明实施例中网页字符串的本地调用方法的一个实施例示意图;
图2为本发明实施例中网页字符串的本地调用方法的第二个实施例示意图;
图3为本发明实施例中网页字符串的本地调用方法的第三个实施例示意图;
图4为本发明实施例中网页字符串的本地调用方法的第四个实施例示意图;
图5为本发明实施例中网页字符串的本地调用装置的一个实施例示意图;
图6为本发明实施例中网页字符串的本地调用装置的另一个实施例示意图;
图7为本发明实施例中网页字符串的本地调用设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种网页字符串的本地调用方法、装置、设备及存储介质。本发明先提取源代码字符串中,符合预置字符串规则的目标字符串,再生成目标字符串对应的目标标签代码,最后将目标标签代码替换源代码中的字符串。由于目标标签代码中包含目标字符串对应的目标超链接地址,因此当用户点击网页上的目标字符串时,会自动连接跳转至目标超链接地址,从而实现应用对字符串的调用,提升了网页上字符串的利用效率,为用户提供了舒适简便的使用方法。此外,本发明是在客户端实现,因此不依赖服务端对源代码的处理,节省了成本。同时本发明还根据字符串类型分为了可变字符串和固定字符串。可变字符串的目标超链接地址根据目标字符串的内容而改变,例如目标字符串为电话号码,目标超链接地址为拨打该电话号码的链接。而固定字符串目标为某个网址名称、简称或别称,目标超链接地址为预置的该网站的链接。因此本发明兼顾了不同的字符串类型,更具有灵活性和应用性,可在网页或者网页交互应用界面实施。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中网页字符串的本地调用方法的一个实施例包括:
101、向服务端发起网页浏览请求;
可以理解的是,本发明的执行主体可以为网页字符串的本地调用装置,还可以是前端或者客户端,具体此处不做限定。本发明实施例以客户端为执行主体为例进行说明。
在本实施例中,用户使用的电子设备为智能手机,当用户输入某网站的域名后,通过回车按键,向客户端发送域名。
客户端通过DNS服务端对所述域名进行解析,获取对应的IP地址。
获得IP地址后,客户端与所述服务端建立TCP连接和HTTP协议,以便两者之间进行数据传输。建立连接后,客户端根据终端发送的域名,向服务端发送对应的源代码的请求。
102、接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
服务端接收到请求后,对请求内容进行解析并从数据库中调取与请求内容对应的源代码。
基于http协议,服务端将第一页面源代码发送至客户端。客户端接收该第一页面源代码。
103、提取所述第一页面源代码中满足预置字符串规则的字符串,得到目标字符串;
在本实施例中,当获得第一页面源代码后,通过预设字符串规则,对第一页面源代码的数据进行筛选得到字符串为电话号码。
采用的筛选方法有很多种,例如正则表达式。
国内的电话号码命名规律:11位数字,由3位网号+4位HLR号+4位的个人代码组成。将所需要的规则写入正则表达式中,即可正确提取所需要的字符串。因此针对移动电话号码的正则表达式可为:^1(3|4|5|7|8)\d{9}$`,即筛选条件即为1开头,第二位为3/4/5/6/7/8等的任意一个,后面的\d表示数字0~9中的9位数字,数字总共11位。
针对固定电话号码的正则表达式为0\\d{2,3}-\\d{7,8},筛选条件即为开头数字为0,后面为2或3位任意数字,再连接分隔符,最后为任意7或8位数字。
此外还有预置的紧急号码,如110、119,只要当前字符串与紧急号码匹配,则确定该字符串为待提取对象。
本方案中的字符串规则多种多样。电话号码的长度、数字内容等都可根据需求进行定制,也可根据页面内容进行定制,从而提高筛选的精准度。
104、根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码;
在本方案的一个实施例中,筛选得到的目标字符串为“A市图书馆”,先确定“A市图书馆”对应的第二标签代码,为<a data-lat=“1”data-lng=“2”class=“location”>字符串变量</a>。
此标签代码还包括DOM监听器,监听器中包括addEventListener()方法和event.preventDefault()方法,前者用以增加目标字符串标签代码监听的事件类型,如长按,后者用于阻止a标签的默认事件,如跳转网页、拨号的发生。此外还有function()方法,在其中包含了预置的目标超链接地址url3,url3=http://apis.map.qq.com/uri/v1/marker?marker=coord:lat,lng;addr:address。该目标超链接地址中通讯协议为http协议,API接口连接着腾讯地图,lat、lng为A图书馆的经纬坐标,address为A图书馆的具体地址。将“A市图书馆”赋值至字符串变量中,得到对应的目标标签代码。
最后通过replace()方法,将得到的目标字符串标签代码替换之前提取到的字符串,从而得到第二页面源代码。
105、渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串。
本实例中,通过HTML解析器对替换后的第二页面源代码中的HTML文本进行解析,并在解析的过程中构建DOM树。
先将HTML字节数据转换为文件指定编码字符。然后根据HTML规范将字符转换为令牌。如<html>标签,令牌记载<html>的范围,并根据范围判断其他标签是否位于此标签内部,是否为此标签的子标签。然后将每个令牌被转换成定义其属性和规则的对象。最终所有对象的集合就像一棵树形结构,DOM树构建完成。
解析构建DOM树之后,将CSS样式应用到DOM节点上,得到呈现树。先根据CSS样式的重要性进行级别排序。同一重要级别的声明,根据CSS选择符的特指度来判断优先级。呈现树的每一个节点为对应的DOM节点的CSS框。每一个呈现树节点都有与之对应的DOM节点。呈现树构建完成后就进行布局处理。根据显示窗口的大小和之前样式中的大小信息处理呈现树实际显示大小和位置。布局从根呈现节点开始,遍历每一个子节点,计算最终显示的信息。中间会根据需求向服务端请求加载一些文件,例如遇上<img>标签,异步向服务端发送请求加载图片文件,执行此过程中渲染一直进行着,直到渲染完成。最后基于布局处理,绘制呈现树并输出,以供本地应用调用所述目标字符串。
本发明实施例中,先提取源代码字符串中符合预置字符串规则的目标字符串,再生成目标字符串对应的目标标签代码,最后将目标标签代码替换原源代码中的字符串。由于目标标签代码中包含目标字符串对应的目标超链接地址,因此当用户点击网页上的目标字符串时,会自动连接跳转至目标超链接地址,从而实现应用对字符串的调用,提升了网页上字符串的利用效率,为用户提供了舒适简便的使用方法。
请参阅图2,本发明实施例中网页字符串的本地调用方法的第二个实施例包括:
201、向服务端发起网页浏览请求;
202、接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
203、遍历所述第一页面源代码中的字符串;
获取源代码后,通过find_all()方法找到源代码中标签内的字符串。再通过find_all()方法对标签内的字符串进行遍历。
204、判断当前遍历的字符串是否符合预置字符串规则,其中,所述字符串规则包括:可变字符串规则和固定字符串规则;
可变字符串规则为:若待提取字符串满足预置正则表达式,则确定待提取对象为可变字符串。而固定字符串规则为:若待提取字符串与预置固定字符串库中字符串匹配,则确定待提取对象为固定字符串;
通过for函数将源代码中的字符串输入if函数中,以判断是否符合预置字符串规则。
在本实施例中,通过find_all()方法找到一个阿拉伯数字,则将该阿拉伯数字输入if函数进行判断。
再通过for函数将该阿拉伯数字后的连续字符输入if函数中,直到字符串长度超过预置的最大字符串的长度。
205、若当前遍历的字符串符合预置字符串规则,则提取所述字符中的字符串作为目标字符串,并确定所述目标字符串对应的字符串类型,其中,所述字符串类型包括可变字符串类型和固定字符串类型;
其中,所述可变字符串规则为:若当前遍历的字符串满足预置正则表达式,则确定当前遍历的字符串为可变字符串类型;所述固定字符串规则为:若当前遍历的字符串与预置固定字符串库中的字符串匹配,则确定待提取对象为固定字符串类型;
206、当所述目标字符串为可变字符串类型时,根据所述目标字符串对应的所述正则表达式,确定对应的第一标签代码,其中,所述第一标签代码包括预置地址变量和预置字符串变量;
若目标字符串对应可变字符串类型,则根据其对应的正则表达式,确定其对应的第一标签代码<a href="地址变量">字符串变量</a>。
不同的正则表达式对应着不同的第一标签代码。以电话号码为例,若目标字符串为123,则第一标签代码只有拨号协议,因此只能可被拨号程序调用,若目标字符串为123456,则可能第一标签代码中还存在其他协议,能被短信或其他软件调用。
207、将所述目标字符串赋值至所述字符串变量和所述字符串变量,得到所述目标字符串对应的目标超链接地址和目标标签代码;
在第一个实施例中,提取到的可变字符串为123456,通过“=”将提取的目标字符串赋值至地址变量和字符串变量,最后得到的目标标签代码为:<a href="tel:123456">123456</a>。其中,目标超链接地址为“tel:123456”。
在第二个实施例中,待显示的网络页面镶嵌在某款app中。
目前WebView是最常见的app控件之一。但直接使用WebView控件在在调用HTML中的a标签执行任务时,会出现无响应的情况。
因此,在本实施例中,第一标签代码中包括uri.parse()函数代码。
将目标超链接地址添加至uri.parse()中,得到目标标签代码。
28、将所述目标标签代码添加至所述第一页面源代码中以替换所述目标字符串,得到第二页面源代码;
通过replace()方法,将得到的目标字符串标签代码替换之前提取到的字符串,得到第二页面源代码。
209、渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串。
本发明还根据字符串类型分为了可变字符串和固定字符串。可变字符串的目标超链接地址根据目标字符串的内容而改变,例如目标字符串为电话号码,目标超链接地址为拨打该电话号码的链接,因此兼顾了不同的字符串类型,更具有灵活性和应用性,可在网页或者网页交互应用界面实施
请参阅图3,本发明实施例中网页字符串的本地调用方法的第三个实施例包括:
301、向服务端发起网页浏览请求;
302、接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
303、提取所述第一页面源代码中,满足预置字符串规则的字符串,得到目标字符串;
304、当所述目标字符串为固定字符串类型时,确定所述目标字符串对应的预置第二标签代码库中第二标签代码,其中,所述第二标签代码包含预置目标超链接地址和预置字符串变量;
在本实施例中,预置字符串库中字符串都有对应的第二标签代码,每一个第二标签代码都有对应的目标超链接地址。
当根据固定字符串规则筛选得到的目标字符串“A网站”和“A网”,则第二标签代码为字符串库中的字符串“A网站”和“A网”对应的,第二标签代码<a href="A网站网址">第二字符串变量</a>。
305、将所述目标字符串赋值至所述字符串变量,得到所述目标标签代码;
通过赋值方式将得到的“A网站”添加至第二标签代码中的字符串变量,得到目标字符串标签代码。
“A网站”对应的目标字符串标签代码为<a href="A网站网址">A网站</a>,“A网”对应的目标字符串标签代码为<a href="A网站网址">A网</a>。
在该目标标签代码中,预置的通讯协议为http协议,<a>标签默认的监听事件为点击。但也可以对监听事件进行设定,如双击、长按,由于此技术为现有技术,在这里不再进行进一步描述。
306、将所述字符串标签添加至所述第一页面源代码中以替换所述目标字符串,得到第二页面源代码;
通过replace()方法,将得到的目标字符串标签代码替换之前提取到的字符串,得到第二页面源代码。
307、渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串。
本发明根据字符串类型分为了可变字符串和固定字符串。如固定字符串目标为某个网址名称、简称或别称,根据该目标字符串确定其对应的目标超链接地址,如该网站的链接。因此兼顾了不同的字符串类型,更具有灵活性和应用性,可在网页或者网页交互应用界面实施
请参阅图4,本发明实施例中网页字符串的本地调用方法的第四个实施例包括:
401、向服务端发起网页浏览请求;
402、接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
403、提取所述第一页面源代码中,满足预置字符串规则的字符串,得到目标字符串;
404、根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码,所述目标标签代码包括预置通讯协议和预置监听事件属性,所述预置监听事件属性包括监听对象和监听类型;
405、渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串;
406、监听是否存在触发事件;
407、若存在,则对所述事件进行解析,获取所述事件对应的执行对象和事件类型;
本实施例中,用户使用的移动终端为手机,事件类型包括鼠标事件和触摸事件,例如点击、双击、右击、长按。
当用户使用手机浏览网页应用界面时,点击应用界面上的电话号码,则形成了点击事件。
接收并解析事件,获取事件中的执行对象和事件类型。
408、判断所述执行对象是否为所述目标标签代码的监听对象;
其中执行对象通过位置坐标确定。对事件进行解析,通过CSS动态定位得到的在最内层包容元素的x坐标和y坐标,从而判断事件的执行对象是否为目标字符串。
409、若所述执行对象为所述目标标签代码的监听对象,则判断所述事件类型是否为所述目标标签代码的监听类型;
确定执行对象为目标字符串后,再判断事件类型是否为目标字符串标签代码的监听事件类型。
410、若所述事件类型为所述目标标签代码的监听类型,则基于所述通讯协议,跳转至所述目标超链接地址对应的应用界面
确定获取的点击事件是目标字符串标签代码所监听的事件,基于目标字符串标签代码中的通讯协议,直接运行目标字符串标签代码。
当目标字符串为可变字符串时,在第一个实施例中,提取到的可变字符串为123456,通讯协议包括tel协议和sms协议,两个a标签封装在dialog标签中。
当检测到用户点击目标字符串后,弹出窗口,窗口上分别显示“拨号”和“发送短信”。用户再次进行点击窗口上的拨号后,基于tel协议,跳转至拨号应用界面并自动将123456作为电话号码拨出。
第二个方案中,用户点击页面上的“A市图书馆”。先通过预置的addEventListener()方法监听到用户点击了目标字符串,然后基于预先设置的event.preventDefault()方法,阻止a标签默认在浏览器中跳转网页,最后基于http协议和API接口唤醒手机上安装的腾讯地图,并在地图上显示A图书馆的具体位置。
当目标字符串为固定字符串时,在一个实施例中,目标字符串为“A网站”。当用户点击A网站时,屏幕上打开默认浏览器窗口,同时客户端发送A网站浏览请求。
由于目标标签代码中包含目标字符串对应的目标超链接地址,因此当用户点击网页上的目标字符串时,会自动连接跳转至目标超链接地址,从而实现应用对字符串的调用,提升了网页上字符串的利用效率,为用户提供了舒适简便的使用方法。本实施例详细描述如何实现事件的监听和目标超链接地址的跳转。
上面对本发明实施例中网页字符串的本地调用方法进行了描述,下面对本发明实施例中网页字符串的本地调用装置进行描述,请参阅图5,本发明实施例中网页字符串的本地调用装置一个实施例包括:
请求模块501,用于向服务端发起网页浏览请求;
接收模块502,用于接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
提取模块503,用于提取所述第一页面源代码中,满足预置字符串规则的字符串,得到目标字符串;
处理模块504,用于根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中以替换所述目标字符串,得到第二页面源代码;
显示模块505,用于渲染所述第二页面源代码以生成网页页面并显示,以供本地应用调用所述目标字符串。
本发明实施例中,先提取源代码字符串中,符合预置字符串规则的目标字符串,再生成目标字符串对应的目标标签代码,最后将目标标签代码替换原源代码中的字符串。由于目标标签代码中包含目标字符串对应的目标超链接地址,因此当用户点击网页上的目标字符串时,会自动连接跳转至目标超链接地址,从而实现应用对字符串的调用,提升了网页上字符串的利用效率,为用户提供了舒适简便的使用方法。
请参阅图6,本发明实施例中网页字符串的本地调用装置的另一个实施例包括:
请求模块601,用于向服务端发起网页浏览请求;
接收模块602,用于接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
提取模块603,用于提取所述第一页面源代码中满足预置字符串规则的字符串,得到目标字符串;
处理模块604,用于根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码;
显示模块605,用于渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串。
可选的,所述目标标签代码包括预置通讯协议和预置监听事件类型,所述预置监听事件属性包括监听对象和监听类型。
可选的,所述提取单元603具体用于:
遍历所述第一页面源代码中的字符串;
判断当前遍历的字符串是否符合预置字符串规则;
若当前遍历的字符串符合预置字符串规则,则提取所述字符中的字符串作为目标字符串,并确定所述目标字符串对应的字符串类型,其中,所述字符串类型包括可变字符串和固定字符串。
可选的,所述网页字符串的本地调用装置中所述字符串规则包括:可变字符串规则和固定字符串规则;
其中,所述可变字符串规则为:若当前遍历的字符串满足预置正则表达式,则确定当前遍历的字符串为可变字符串类型;所述固定字符串规则为:若当前遍历的字符串与预置固定字符串库中的字符串匹配,则确定待提取对象为固定字符串类型。
其中,所述处理模块604包括第一处理单元6041,所述第一处理单元6041具体用于:
当所述目标字符串为可变字符串类型时,根据所述目标字符串对应的所述正则表达式,确定对应的第一标签代码,其中,所述第一标签代码包括预置地址变量和预置字符串变量;
将所述目标字符串赋值至所述字符串变量和所述字符串变量,得到所述目标字符串对应的目标超链接地址和目标标签代码;
将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码。
其中,所述处理模块604还包括第二处理单元6042,所述第二处理单元6042具体用于:
当所述目标字符串为固定字符串类型时,确定所述目标字符串对应的预置第二标签代码库中第二标签代码,其中,所述第二标签代码包含预置目标超链接地址和预置字符串变量;
将所述目标字符串赋值至所述字符串变量,得到所述目标标签代码;
将所述字符串标签添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码。
其中,所述网页字符串的本地调用装置还包括监听模块606,所述监听模块606具体用于:
监听是否存在触发事件;
若存在,则对所述事件进行解析,获取所述事件对应的执行对象和事件类型;
判断所述执行对象是否为所述目标标签代码的监听对象;
若所述执行对象为所述目标标签代码的监听对象,则判断所述事件类型是否为所述目标标签代码的监听类型;
若所述事件类型为所述目标标签代码的监听类型,则基于所述通讯协议,跳转至所述目标超链接地址对应的应用界面。
本实施例在上一实施例基础上,根据字符串类型分为了可变字符串和固定字符串。可变字符串的目标超链接地址根据目标字符串的内容而改变,例如目标字符串为电话号码,目标超链接地址为拨打该电话号码的链接。而固定字符串目标为某个网址名称、简称或别称,目标超链接地址为预置的该网站的链接。因此兼顾了不同的字符串类型,更具有灵活性和应用性,可在网页或者网页交互应用界面实施。
上面图5和图6从模块化功能实体的角度对本发明实施例中的网页字符串的本地调用装置进行详细描述,下面从硬件处理的角度对本发明实施例中网页字符串的本地调用设备进行详细描述。
图7是本发明实施例提供的一种网页字符串的本地调用设备的结构示意图,该网页字符串的本地调用设备700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)710(例如,一个或一个以上处理器)和存储器720,一个或一个以上存储应用程序733或数据732的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器720和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对网页字符串的本地调用设备700中的一系列指令操作。更进一步地,处理器710可以设置为与存储介质730通信,在网页字符串的本地调用设备700上执行存储介质730中的一系列指令操作。
网页字符串的本地调用设备700还可以包括一个或一个以上电源740,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口770,和/或,一个或一个以上操作系统731,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图7示出的网页字符串的本地调用设备结构并不构成对网页字符串的本地调用设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述网页字符串的本地调用方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种网页字符串的本地调用方法,其特征在于,所述网页字符串的本地调用方法包括:
向服务端发起网页浏览请求;
接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
提取所述第一页面源代码中满足预置字符串规则的字符串,得到目标字符串;
根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码;
渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串。
2.根据权利要求1所述的网页字符串的本地调用方法,其特征在于,所述目标标签代码包括预置通讯协议和预置监听事件属性,所述预置监听事件属性包括监听对象和监听类型。
3.根据权利要求2所述的网页字符串的本地调用方法,其特征在于,所述提取所述第一页面源代码中满足预置字符串规则的字符串,得到目标字符串包括:
遍历所述第一页面源代码中的字符串;
判断当前遍历的字符串是否符合预置字符串规则;
若当前遍历的字符串符合预置字符串规则,则提取所述字符中的字符串作为目标字符串,并确定所述目标字符串对应的字符串类型,其中,所述字符串类型包括可变字符串和固定字符串。
4.根据权利要求3所述的网页字符串的本地调用方法,其特征在于,所述字符串规则包括:可变字符串规则和固定字符串规则;
其中,所述可变字符串规则为:若当前遍历的字符串满足预置正则表达式,则确定当前遍历的字符串为可变字符串类型;所述固定字符串规则为:若当前遍历的字符串与预置固定字符串库中的字符串匹配,则确定待提取对象为固定字符串类型。
5.根据权利要求4所述的网页字符串的本地调用方法,其特征在于,所述根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码包括:
当所述目标字符串为可变字符串类型时,根据所述目标字符串对应的所述正则表达式,确定对应的第一标签代码,其中,所述第一标签代码包括预置地址变量和预置字符串变量;
将所述目标字符串赋值至所述字符串变量和所述字符串变量,得到所述目标字符串对应的目标超链接地址和目标标签代码;
将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码。
6.根据权利要求4所述的网页字符串的本地调用方法,其特征在于,所述根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码包括:
当所述目标字符串为固定字符串类型时,确定所述目标字符串对应的预置第二标签代码库中第二标签代码,其中,所述第二标签代码包含预置目标超链接地址和预置字符串变量;
将所述目标字符串赋值至所述字符串变量,得到所述目标标签代码;
将所述字符串标签添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码。
7.根据权利要求2-6中任一所述的网页字符串的本地调用方法,其特征在于,在所述渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串之后,还包括:
监听是否存在触发事件;
若存在,则对所述事件进行解析,获取所述事件对应的执行对象和事件类型;
判断所述执行对象是否为所述目标标签代码的监听对象;
若所述执行对象为所述目标标签代码的监听对象,则判断所述事件类型是否为所述目标标签代码的监听类型;
若所述事件类型为所述目标标签代码的监听类型,则基于所述通讯协议,跳转至所述目标超链接地址对应的应用界面。
8.一种网页字符串的本地调用装置,其特征在于,所述网页字符串的本地调用装置包括:
请求模块,用于向服务端发起网页浏览请求;
接收模块,用于接收所述服务端响应所述网页浏览请求所返回的第一页面源代码;
提取模块,用于提取所述第一页面源代码中满足预置字符串规则的字符串,得到目标字符串;
处理模块,用于根据所述目标字符串,生成包含对应的目标超链接地址的目标标签代码,并将所述目标标签代码添加至所述第一页面源代码中,以替换所述目标字符串并得到第二页面源代码;
显示模块,用于渲染所述第二页面源代码,以显示对应的网页页面并供本地应用调用所述目标字符串。
9.一种网页字符串的本地调用设备,其特征在于,所述网页字符串的本地调用设备包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述网页字符串的本地调用设备执行如权利要求1-7中任意一项所述的网页字符串的本地调用方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述网页字符串的本地调用方法。
CN202010351170.XA 2020-04-28 2020-04-28 网页字符串的本地调用方法、装置、设备及存储介质 Active CN111680247B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010351170.XA CN111680247B (zh) 2020-04-28 2020-04-28 网页字符串的本地调用方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010351170.XA CN111680247B (zh) 2020-04-28 2020-04-28 网页字符串的本地调用方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111680247A CN111680247A (zh) 2020-09-18
CN111680247B true CN111680247B (zh) 2024-04-05

Family

ID=72452333

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010351170.XA Active CN111680247B (zh) 2020-04-28 2020-04-28 网页字符串的本地调用方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111680247B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625738B (zh) * 2020-05-27 2022-03-15 北京百度网讯科技有限公司 App目标页面的唤起方法、装置、设备和存储介质
CN112637361B (zh) * 2020-12-29 2022-09-16 北京天融信网络安全技术有限公司 一种页面代理方法、装置、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102393857A (zh) * 2011-11-01 2012-03-28 中兴通讯股份有限公司 一种用网页进行本地调用的方法和系统
CN103324668A (zh) * 2013-05-20 2013-09-25 吴涛军 一种在网页上标记文本的标记系统
CN105094786A (zh) * 2014-05-21 2015-11-25 广州市动景计算机科技有限公司 基于JavaScript定制页面的方法及系统
CN105550596A (zh) * 2015-12-23 2016-05-04 北京奇虎科技有限公司 一种访问处理方法和装置
CN105589913A (zh) * 2015-06-15 2016-05-18 广州市动景计算机科技有限公司 一种提取页面信息的方法及装置
CN107704499A (zh) * 2017-08-28 2018-02-16 深圳市华傲数据技术有限公司 一种应用程序的页面跳转控制方法及装置
CN110221872A (zh) * 2019-04-22 2019-09-10 五八有限公司 页面跳转方法、装置、电子设备和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200836075A (en) * 2007-02-16 2008-09-01 Esobi Inc Method of converting hypertext markup language web page into pure text and system thereof

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102393857A (zh) * 2011-11-01 2012-03-28 中兴通讯股份有限公司 一种用网页进行本地调用的方法和系统
CN103324668A (zh) * 2013-05-20 2013-09-25 吴涛军 一种在网页上标记文本的标记系统
CN105094786A (zh) * 2014-05-21 2015-11-25 广州市动景计算机科技有限公司 基于JavaScript定制页面的方法及系统
CN105589913A (zh) * 2015-06-15 2016-05-18 广州市动景计算机科技有限公司 一种提取页面信息的方法及装置
CN105550596A (zh) * 2015-12-23 2016-05-04 北京奇虎科技有限公司 一种访问处理方法和装置
CN107704499A (zh) * 2017-08-28 2018-02-16 深圳市华傲数据技术有限公司 一种应用程序的页面跳转控制方法及装置
CN110221872A (zh) * 2019-04-22 2019-09-10 五八有限公司 页面跳转方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN111680247A (zh) 2020-09-18

Similar Documents

Publication Publication Date Title
CN101211364B (zh) 用于万维网页中暴露的资源的公共书签的方法和系统
CN102597993B (zh) 利用统一资源标识符管理应用状态信息
US8301645B1 (en) Aggregated web analytics request systems and methods
CA2839006C (en) Methods for making ajax web applications bookmarkable and crawlable and devices thereof
CN102393857B (zh) 一种用网页进行本地调用的方法和系统
CN106528657A (zh) 浏览器跳转至应用程序的控制方法及装置
CN104426925B (zh) 网页资源获取方法及装置
EP1641211A2 (en) Web server and method for dynamic content.
WO2011041465A1 (en) Enhanced website tracking system and method
CN103873918A (zh) 图片处理方法、装置及终端
CN107870989A (zh) 网页生成方法及终端设备
CN111680247B (zh) 网页字符串的本地调用方法、装置、设备及存储介质
CN100550015C (zh) 改进的用户界面
CN113076294A (zh) 一种信息分享方法和装置
CN109670100B (zh) 一种页面数据抓取方法及装置
CN113656737A (zh) 网页内容展示方法、装置、电子设备以及存储介质
WO2001048630A2 (en) Client-server data communication system and method for data transfer between a server and different clients
CN111078219A (zh) 页面显示方法、装置、系统、电子设备及存储介质
CN112948733B (zh) 接口维护方法、装置、计算设备以及介质
CN115357319A (zh) 一种用户界面渲染方法及装置
US20070240048A1 (en) A standard communication interface for server-side filter objects
CN115905274A (zh) 数据处理的方法、装置、电子设备及介质
EP3819779A1 (en) Browser management system, browser management method, browser management program, and client program
CN107844537A (zh) 一种标记网页的方法及系统
CN114115648B (zh) 一种数据请求的处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210207

Address after: Room 201, building a, No.1 Qianwan 1st Road, Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong Province (settled in Shenzhen Qianhai business secretary Co., Ltd.)

Applicant after: Shenzhen saiante Technology Service Co.,Ltd.

Address before: 1-34 / F, Qianhai free trade building, 3048 Xinghai Avenue, Mawan, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong 518000

Applicant before: Ping An International Smart City Technology Co.,Ltd.

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant