CN112541136B - 网络地址信息的获取方法、装置、存储介质和电子设备 - Google Patents
网络地址信息的获取方法、装置、存储介质和电子设备 Download PDFInfo
- Publication number
- CN112541136B CN112541136B CN201910900667.XA CN201910900667A CN112541136B CN 112541136 B CN112541136 B CN 112541136B CN 201910900667 A CN201910900667 A CN 201910900667A CN 112541136 B CN112541136 B CN 112541136B
- Authority
- CN
- China
- Prior art keywords
- network address
- target
- request
- jump
- type
- 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
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000004088 simulation Methods 0.000 claims abstract description 55
- 230000009191 jumping Effects 0.000 claims abstract description 44
- 230000004044 response Effects 0.000 claims description 71
- 238000004891 communication Methods 0.000 claims description 5
- 230000000694 effects Effects 0.000 abstract description 3
- 235000008694 Humulus lupulus Nutrition 0.000 description 18
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 239000000284 extract Substances 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000005457 optimization Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 230000010354 integration Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
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]
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种网络地址信息的获取方法、装置、存储介质和电子设备。该方法应用于模拟客户端,模拟客户端用于模拟真实客户端的使用场景,包括:获取中间网络地址,其中,中间网络地址用于跳转至第一目标网络地址;获取目标请求,并确定目标请求的跳转类型;根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址;获取通过目标请求访问第一目标网络地址得到的目标信息;从目标信息中提取出用于指示第一目标网络地址的信息。通过本发明,达到了提高获取目标网络地址的效率的效果。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种网络地址信息的获取方法、装置、存储介质和电子设备。
背景技术
目前,在获取目标网络地址时,通常是要将中间网络地址作为一个请求地址,通过实际请求一次的方式(Http请求),从请求返回信息中获取最终的目标网络地址。
上述方法对于服务端跳转的方式是大部分支持的,而对于混合跳转的方式与客户端跳转的方式是无法获取目标网络地址的,也需要区分搜索引擎与媒体平台的网络地址跳转的规则,根据规则判断是否需要跳转以及跳转是否结束,从处理性能而言并不是最优的获取目标网络地址的方式,从而存在获取目标网络地址的效率低下的技术问题。
针对现有技术中获取目标网络地址的效率低下的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种网络地址信息的获取方法、装置、存储介质和电子设备,以至少解决获取目标网络地址的效率低的技术问题。
为了实现上述目的,根据本发明的一个方面,提供了一种网络地址信息的获取方法。该方法应用于模拟客户端,模拟客户端用于模拟真实客户端的使用场景,包括:获取中间网络地址,其中,中间网络地址用于跳转至第一目标网络地址;获取目标请求,并确定目标请求的跳转类型;根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址;获取通过目标请求访问第一目标网络地址得到的目标信息;从目标信息中提取出用于指示第一目标网络地址的信息。
可选地,确定目标请求的跳转类型包括:从目标请求中获取第一响应头;根据第一响应头确定跳转类型。
可选地,根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址包括:使用与跳转类型对应的策略将第一响应头由中间网络地址跳转至第一目标网络地址;获取通过目标请求访问第一目标网络地址得到的目标信息包括:获取通过第一响应头访问第一目标网络地址得到的第二响应头;从目标信息中提取出用于指示第一目标网络地址的信息包括:从第二响应头中提取出用于指示第一目标网络地址的信息。
可选地,根据第一响应头确定出的跳转类型包括以下之一:第一跳转类型,其中,第一跳转类型用于指示通过服务器将目标请求由中间网络地址跳转至第一目标网络地址;第二跳转类型,其中,第二跳转类型用于指示通过模拟客户端将目标请求由中间网络地址跳转至第一目标网络地址;第三跳转类型,其中,第三跳转类型用于指示通过服务器将目标请求由中间网络地址跳转至第二目标网络地址,并将用于指示第二目标网络地址的信息返回至模拟客户端,通过模拟客户端将目标请求由第二目标网络地址跳转至第一目标网络地址。
可选地,根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址包括:根据跳转类型将目标请求,由中间网络地址依次跳转多个第三网络地址,直至跳转至第一目标网络地址。
可选地,在确定目标请求的跳转类型之后,该方法还包括:设置跳转类型的标识信息;根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址包括:使用与标识信息对应的策略将目标请求由中间网络地址跳转至第一目标网络地址。
可选地,模拟客户端为无头浏览器。
为了实现上述目的,根据本发明的另一方面,还提供了一种网络地址信息的获取装置。该装置应用于模拟客户端,模拟客户端用于模拟真实客户端的使用场景,包括:第一获取单元,用于获取中间网络地址,其中,中间网络地址用于跳转至第一目标网络地址;第二获取单元,用于获取目标请求,并确定目标请求的跳转类型;跳转单元,用于根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址;第三获取单元,用于获取通过目标请求访问第一目标网络地址得到的目标信息;提取单元,用于从目标信息中提取出用于指示第一目标网络地址的信息。
为了实现上述目的,根据本发明的另一方面,还提供了一种存储介质。该存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行本发明实施例的网络地址信息的获取方法。
为了实现上述目的,根据本发明的另一方面,还提供了一种处理器。该处理器用于运行程序,其中,程序运行时执行本发明实施例的网络地址信息的获取方法。
本发明实施例的网络地址信息的获取方法,应用于模拟客户端,模拟客户端用于模拟真实客户端的使用场景,获取中间网络地址,其中,中间网络地址用于跳转至第一目标网络地址;获取目标请求,并确定目标请求的跳转类型;根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址;获取通过目标请求访问第一目标网络地址得到的目标信息;从目标信息中提取出用于指示第一目标网络地址的信息。也就是说,利用模拟客户端的特性,确定目标请求的跳转类型,根据跳转类型将目标请求跳转至第一目标网络地址,并从目标请求访问第一目标网络地址得到的目标信息中提取出用于指示第一目标网络地址的信息,由于针对任何类型的跳转方式,从而达到了提高获取目标网络地址的效率的技术效果,解决了获取目标网络地址的效率低的技术问题。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种网络地址信息的获取方法的流程图;
图2是根据本发明实施例的一种获取目标网络地址的示意图;
图3是根据本发明实施例的另一种获取目标网络地址的示意图;
图4是根据本发明实施例的一种网络地址信息的获取装置的示意图;以及
图5是根据本发明实施例的一种电子设备的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
本发明实施例提供了一种网络地址信息的获取方法,应用于模拟客户端,模拟客户端用于模拟真实客户端的使用场景,可以是没有用户图形界面的客户端,但提供了对于网页的自动控制,其内的点击、翻页等人的相关操作通过脚本程序设计实现,从而实现自动化,这种控制所依赖的环境和现代真实客户端类似,但通过命令行界面或者网络通讯实施,为良好的网页测试工具,提供了和普通客户端同样的功能。可选地,该实施例应用在搜索引擎优化(Search Engine Optimization,简称为SEO)优化的场景中。
图1是根据本发明实施例的一种网络地址信息的获取方法的流程图。如图1所示,该方法可以包括以下步骤:
步骤S102,获取中间网络地址。
在本发明上述步骤S102提供的技术方案中,网络地址可以为统一资源定位符(Uniform Resource Locator,简称为URL)地址,也即,网络资源地址。在网页(Web)网络中,一个网络资源对应一个URL,网络资源可以称为URL资源,可以为页面、文件、网站等,而网络上的所有的URL资源都依赖于搜索服务来进行管理、检索、访问。其中,搜索服务会提供一个中间网络地址,也即,中间的资源地址、中间URL,用户通过访问中间网络地址,会被对应的网络路径映射,并跳转到第一目标网络地址,该第一目标网络地址也即最终的目的地址、最终URL,从而实现中间网络地址到第一目标网络地址的跳转,也即,实现了URL跳转。
该实施例通过模拟客户端获取中间网络地址,以通过模拟客户端模拟真实客户端的处理过程。
步骤S104,获取目标请求,并确定目标请求的跳转类型。
在本发明上述步骤S104提供的技术方案中,在获取中间网络地址之后,获取目标请求,并确定目标请求的跳转类型。
在该实施例中,目标请求可以为WEB请求,比如,为用户访问请求,模拟客户端可以根据目标请求确定其跳转类型,比如,只获取目标请求中的响应头(Header),判断目标请求的跳转类型。
URL跳转可以根据状态码的不同分为永久性跳转(301)与临时性跳转(302),而该实施例的跳转类型可以是根据发生跳转环节的不同而进行划分的,比如,分为跳转环节发生的服务端的服务端跳转类型、发生在客户端的客户端(js)跳转类型、既发生服务端又发生在客户端的混合跳转类型,其中,永久性跳转(301)与临时性跳转(302)都为服务端跳转。
步骤S106,根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址。
在本发明上述步骤S106提供的技术方案中,在获取目标请求,并确定目标请求的跳转类型之后,根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址。
在相关技术中,主要通过Http请求管道的方式去实现跳转,只能获取服务端跳转类型所对应的第一目标网络地址,而对于混合跳转类型与客户端跳转类型,则无法获取对应的第一目标网络地址。如果需要使用多个跳转类型,则需要在外部服务集成多个模块才能完全支持,同时由于服务端与前端技术差别大,外部服务的集成比较繁琐,从而导致易用性差。
而在该实施例中,内部可以处于多种不同类型的跳转,可以由模拟客户端将目标请求发送至已经确定好的跳转类型所对应的跳转环节,并由该跳转环节将目标请求转发至第一目标网络地址,从而实现目标请求的跳转,并且由于内部可以通过多种不同的跳转类型来获取最终的第一目标网络地址,而对外仅暴露为一个单一服务,从而提升了易用性,达到了通过单一服务完全支持所有的跳转的目的。
步骤S108,获取通过目标请求访问第一目标网络地址得到的目标信息。
在本发明上述步骤S108提供的技术方案中,在根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址之后,获取通过目标请求访问第一目标网络地址得到的目标信息。
在该实施例中,目标请求访问第一目标网络地址,第一目标网络地址上的网络资源可以为目标请求最终请求获取的网络资源,可以由第一目标网络地址对应的服务器对目标请求进行响应,得到目标信息,该目标信息也即请求结果。
步骤S110,从目标信息中提取出用于指示第一目标网络地址的信息。
在本发明上述步骤S110提供的技术方案中,目标信息包括了用于指示第一目标网络地址的信息,比如,包括第一目标网络地址的字符,还可以包括其它间接用于指示第一目标网络地址的信息。从目标信息中提取出用于指示第一目标网络地址的信息,从而达到确定最终的目标网络地址的目的,实现了通过模拟客户端完全模拟真实客户端中实际显示的目标网络地址。
该实施例的网络地址信息的获取方法,应用于模拟客户端,模拟客户端用于模拟真实客户端的使用场景,通过上述步骤S102至步骤S110,获取中间网络地址,其中,中间网络地址用于跳转至第一目标网络地址;获取目标请求,并确定目标请求的跳转类型;根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址;获取通过目标请求访问第一目标网络地址得到的目标信息;从目标信息中提取出用于指示第一目标网络地址的信息。也就是说,利用模拟客户端的特性,确定目标请求的跳转类型,根据跳转类型将目标请求跳转至第一目标网络地址,并从目标请求访问第一目标网络地址得到的目标信息中提取出用于指示第一目标网络地址的信息,由于针对任何类型的跳转方式,从而达到了提高获取目标网络地址的效率的技术效果,解决了获取目标网络地址的效率低的技术问题。
作为一种可选的实施方式,步骤S104,确定目标请求的跳转类型包括:从目标请求中获取第一响应头;根据第一响应头确定跳转类型。
在该实施例中,在模拟客户端确定目标请求的跳转类型时,可以劫持目标请求,将目标请求注入请求管道,可以通过调用接口(API)从目标请求中只获取第一响应头,可选地,该第一响应头中携带了目标请求所适合的跳转类型,模拟客户端根据该第一响应头确定目标请求的跳转类型,比如,模拟客户端判断是否存在混合跳转类型,判断是否为服务端跳转类型还是客户端跳转类型,以解决跳转不彻底的问题。
可选地,在该实施例中,对目标请求中的请求数据进行修改,比如,对目标请求中用于指示请求方式的数据和相关参数进行修改,得到第一响应头,以请求返回第二响应头。
作为一种可选的实施方式,步骤S106,根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址包括:使用与跳转类型对应的策略将第一响应头由中间网络地址跳转至第一目标网络地址;步骤S108,获取通过目标请求访问第一目标网络地址得到的目标信息包括:获取通过第一响应头访问第一目标网络地址得到的第二响应头;步骤S110,从目标信息中提取出用于指示第一目标网络地址的信息包括:从第二响应头中提取出用于指示第一目标网络地址的信息。
在相关技术中,会实际请求Web资源,返回请求响应,响应返回的资源对于大并发量下往往会出现较大的带宽资源占用,使得性能与网络资源的使用并非最优。而在该实施例中,在模拟客户端根据第一响应头确定跳转类型之后,可以使用与跳转类型对应的策略,只将第一响应头由中间网络地址跳转至第一目标网络地址。在使用与跳转类型对应的策略将第一响应头由中间网络地址跳转至第一目标网络地址之后,可以获取通过第一响应头访问第一目标网络地址得到的第二响应头,可选地,第一目标网络地址对应的服务器可以对第一响应头进行响应,得到第二响应头,并只返回该第二响应头,从而从传统的连接文本传输(Html对Html),转换为轻量传输(Header对Header),也即,该实施例采用轻量级请求获取第二响应头,大幅降低带宽占用,同时还可以支持大并发请求。在模拟客户端获取通过第一响应头访问第一目标网络地址得到的第二响应头之后,模拟客户端从第二响应头中提取出用于指示第一目标网络地址的信息,从而达到提取出最终的目标网络地址的目的,实现了通过模拟客户端完全模拟真实客户端中实际显示的目标网络地址。
作为一种可选的实施方式,根据第一响应头确定出的跳转类型包括以下之一:第一跳转类型,其中,第一跳转类型用于指示通过服务器将目标请求由中间网络地址跳转至第一目标网络地址;第二跳转类型,其中,第二跳转类型用于指示通过模拟客户端将目标请求由中间网络地址跳转至第一目标网络地址;第三跳转类型,其中,第三跳转类型用于指示通过服务器将目标请求由中间网络地址跳转至第二目标网络地址,并将用于指示第二目标网络地址的信息返回至模拟客户端,通过模拟客户端将目标请求由第二目标网络地址跳转至第一目标网络地址。
在该实施例中,跳转类型可以为第一跳转类型,该第一跳转类型用于指示通过服务器将目标请求由中间网络地址跳转至第一目标网络地址,其中,服务器为一个网站的服务器。可选地,该第一跳转类型为服务端跳转类型,当目标请求被发送到服务器时,服务器按既定的要求将目标请求转发到第一目标网络地址,比如,转到另一个页面或是网站。也即,第一跳转类型是跳转环节发生在服务器,永久性跳转(301)与临时性跳转(302)都为服务端跳转类型。
该实施例的跳转类型还可以为第二跳转类型,该第二跳转类型用于指示通过模拟客户端将目标请求由中间网络地址跳转至第一目标网络地址。可选地,该第二跳转类型为客户端跳转类型,跳转环节发生在模拟客户端。模拟客户端所运行的前端代码可以实现一类跳转,在用户提交目标请求前,可以根据既定要求将目标请求提交到第二目标网络地址来实现跳转。
该实施例的跳转类型还可以为第三跳转类型,第三跳转类型可以为混合跳转类型,用于指示通过服务器将目标请求由中间网络地址跳转至第二目标网络地址,将用于指示第二目标网络地址的信息返回至模拟客户端,也即,返回URL,但仍然进一步包括客户端跳转类型,通过模拟客户端将目标请求由第二目标网络地址跳转至最终的第一目标网络地址,实现了混合跳转的目的。
目前外部有很多提供跳转的服务或应用,但是都相对比较独立,单独提供客户端跳转类型或者单独只能提供服务端跳转类型。对于很多搜索引擎优化SEO的场景来说,上述跳转类型无法满足其需求。而该实施例通过模拟客户端可以同时支持服务端跳转类型、客户端跳转类型、混合跳转类型,从而实现了支持多种跳转类型的目的。
作为一种可选的实施方式,根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址包括:根据跳转类型将目标请求,由中间网络地址依次跳转多个第三网络地址,直至跳转至第一目标网络地址。
在相关技术中,对于一些中间网络地址需要多次跳转的,每次只能执行单次跳转,并且每次还需要判断是否跳转结束。对于不同的搜索引擎的跳转结束而言,还需判断依赖各个服务商的URL规则,对于上游服务商跳转规则调整,对应的跳转的规则也需要同步调整,从而不利于维护。
而该实施例利用模拟客户端所具有的多次触发请求特性来支持多次跳转,可以实现一次输入中间网络地址,支持多次跳转至最终的第一目标网络地址。在该实施例中,可以根据跳转类型将目标请求,由中间网络地址依次跳转多个第三网络地址,直至跳转至第一目标网络地址,避免了由于根据各个搜索服务商的跳转规则去匹配判断,不利于维护的问题。
作为一种可选的实施方式,在步骤S104,确定目标请求的跳转类型之后,该方法还包括:设置跳转类型的标识信息;根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址包括:使用与标识信息对应的策略将目标请求由中间网络地址跳转至第一目标网络地址。
该实施例在确定目标请求之后,可以设置跳转类型的标识信息。标识后的跳转类型可以正常使用,进而可以使用与标识信息对应的策略将目标请求由中间网络地址跳转至第一目标网络地址
作为一种可选的实施方式,模拟客户端为无头浏览器。
该实施例的模拟可以为模拟浏览器,也即,无头浏览器,用于模拟用户浏览器的使用场景,可以是没有用户图形界面的浏览器,但提供了对于网页的自动控制,其内的点击、翻页等人的相关操作通过脚本程序设计实现,从而实现自动化,这种控制所依赖的环境和现代真实客户端类似,但通过命令行界面或者网络通讯实施,为良好的网页测试工具,提供了和普通浏览器同样的功能。
该实施例利用模拟客户端的特性,确定目标请求的跳转类型,根据跳转类型将目标请求跳转至第一目标网络地址,并从请求访问目标网络地址得到的结果中提取出用于指示目标网络地址的信息,由于通过单一服务支持所有的跳转类型,并且支持混合跳转类型,还可以进行跳转类型的识别以及进行多次跳转,接口易集成,易维护,从而提高了对目标网络地址的获取效率。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例2
下面结合优选的实施方式对本发明实施例的技术方案进行说明。
随着网页(Web)技术的发展,网络上的网络资源也越来越多,因而提供这些网络资源的信息的检索访问服务和信息聚合服务也越来越多。比如,提供用于进行网络资源的信息的检索访问服务的谷歌(Google)、百度(Baidu)等搜索引擎,用于提供信息聚合服务的媒体平台。
搜索引擎与媒体平台都可以提供更友好的网络资源的搜索与访问的功能。但是,由于搜索引擎与媒体平台所对应的服务商不同,搜索引擎与媒体平台各自所提供的中间网络资源地址也各有不同。在一些SEO优化的场景中,需要检测SEO的效果,往往需要获取搜索引擎的目标站点与各大媒体平台上的目标站点的匹配度,然而由于各大媒体平台只能获取到中间网络资源地址,所以在SEO的优化中,需要根据中间网络资源地址来获取最终的目标网络地址,也即,最终跳转到的目的地址,才能做搜索引擎的目标站点与各大媒体平台上的目标站点之间的匹配。
图2是根据本发明实施例的一种获取目标网络地址的示意图。如图2所示,输入中间网络资源地址,通过无头浏览器来模拟实际浏览器处理请求的方式。可以通过服务端跳转类型来获取目标网络地址,可选地,将请求由中间网络资源地址跳转至目标网络地址,并返回请求结果,无头浏览器从请求结果中提取最终的目标网络地址的信息,进而确定目标网络地址;该实施例还可以通过客户端跳转类型来获取目标网络地址,在提交请求之前,可以根据既定要求将请求提交到新的网络资源地址来实现跳转,可以执行JS脚本来获取最终的目标网络地址。
图3是根据本发明实施例的另一种获取目标网络地址的示意图。如图3所示,输入中间网络资源地址,可以判断跳转类型,是否是混合类型,是否是多次跳转。可选地,该实施例通过无头浏览器技术将请求发送至中间网络资源地址,从而模拟实际浏览器对请求的处理方式,可以劫持无头浏览器的请求,将其注入请求管道,只获取响应头,将该响应头发送至中间网络资源地址,通过服务端跳转方式,将响应头跳转至目标网络地址,只返回响应头,无头浏览器可以从返回的响应头中提取用于指示目标网络地址的信息。该实施例还可以通过客户端跳转方式来获取目标网络地址,在提交请求之前,可以根据既定要求将请求提交到新的网络资源地址来实现跳转,可以执行JS脚本来获取最终的目标网络地址。
在相关技术中,主要是通过Http请求管道的方式去实现网络资源地址的跳转,这只能处理服务端的跳转URL,而对于混合跳转类型与客户端跳转类型的目标网络地址,是无法获取到的。通常是需要外部服务使用多个跳转类型的服务来获取目标网络地址,而这需要集成多个模块才能完全支持跳转。同时由于服务端与前端技术差别大,服务的集成比较繁琐,易用性较差。
而在该实施例中,单一服务完全支持所有的跳转类型,可以在内部处理多种不同方式的跳转,而对外暴露为一个单一的服务,从而在内部就可以完全支持跳转,进而达到提升易用性的效果。
在相关技术中,对于混合跳转的方式是无法支持的。目前,外部有很多提供URL跳转的服务或应用,但是都相对比较独立,只能单独提供客户端跳转类型或者只能单独提供服务端跳转。对于很多SEO的场景来说,这类URL跳转需求是无法满足的。
而该实施例支持多种跳转类型,且支持混合跳转类型。该实施例可以通过无头浏览器(能模拟真实的浏览器使用场景)的模拟,来通过服务端跳转类型或客户端跳转类型来获取目标网络地址,可以完全模拟用户浏览器中实际最终看到的目标网络地址。该实施例的混合跳转类型可以为由服务端跳转类型返回的网络地址,进一步再通过客户端跳转类型获取最终的目标网络地址。可选地,该实施例通过劫持无头浏览器的请求,只获取请求中的响应头,通过响应头确定是否为混合跳转类型、服务端跳转类型还是客户端跳转类型,可以解决跳转不彻底的问题,同时该实施例还可以在确定跳转类型之后可标识跳转类型。
在相关技术中,无法有效地处理多次跳转。对于一些中间网络地址需要进行多次跳转的,但每次都只能执行单次跳转,并且每次都需要判断跳转是否结束。对于不同搜索引擎在进行跳转结束的判断时,还需要依赖各个服务商的URL跳转规则,对于上游服务商跳转规则的调整,对应的URL跳转也需要同步进行调整,从而不利于维护。
而该实施例支持多次跳转。该实施例通过采用无头浏览器的多次触发请求特性,避免由于依赖各个服务商的URL跳转规则所导致的不利于维护的问题。该实施例可以一次输入中间网络地址,支持多次跳转直至跳转至最终的目标网络地址。
在相关技术中,实际请求网页资源,返回请求响应,而响应返回的网络资源对于大并发量下往往会出现较大的带宽资源占用,使得性能与网络资源的使用都并非最优。
而该实施例节省带宽。由于通过无头浏览器模拟实际请求,也会存在并发量大,响应返回资源多,占用带宽的问题,该实施例可以通过系统API来劫持无头浏览器的请求,在请求中修改请求方式与参数,以请求返回响应头即可。通过上述方式从传统的连接文本传输(Html对Html)转换为轻量传输(Header对Header),从而大幅降低带宽占用,同时还可以提升支持大并发使用。
该实施例利用模拟客户端的特性,确定请求的跳转类型,根据跳转类型将请求跳转至目标网络地址,并从请求访问目标网络地址得到的结果中提取出用于指示目标网络地址的信息,由于通过单一服务支持所有的跳转类型,并且支持混合跳转类型,还可以进行跳转类型的识别以及进行多次跳转,接口易集成,易维护,从而提高了对目标网络地址的获取效率。
实施例3
本发明实施例还提供了一种网络地址信息的获取装置应用于模拟客户端,模拟客户端用于模拟真实客户端的使用场景。需要说明的是,该实施例的网络地址信息的获取装置可以用于执行本发明实施例的网络地址信息的获取方法。
图4是根据本发明实施例的一种网络地址信息的获取装置的示意图。如图4所示,该网络地址信息的获取装置40可以包括:第一获取单元41、第二获取单元42、跳转单元43、第三获取单元44和提取单元45。
第一获取单元41,用于获取中间网络地址,其中,中间网络地址用于跳转至第一目标网络地址。
第二获取单元42,用于获取目标请求,并确定目标请求的跳转类型。
跳转单元43,用于根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址。
第三获取单元44,用于获取通过目标请求访问第一目标网络地址得到的目标信息。
提取单元45,用于从目标信息中提取出用于指示第一目标网络地址的信息。
可选地,第二获取单元42包括:第一获取模块,用于从目标请求中获取第一响应头;确定模块,用于根据第一响应头确定跳转类型。
可选地,跳转单元43包括:第一跳转模块,用于使用与跳转类型对应的策略将第一响应头由中间网络地址跳转至第一目标网络地址;第三获取单元44包括:第二获取模块,用于获取通过第一响应头访问第一目标网络地址得到的第二响应头;提取单元45包括:提取模块,用于从第二响应头中提取出用于指示第一目标网络地址的信息。
可选地,根据第一响应头确定出的跳转类型包括以下之一:第一跳转类型,其中,第一跳转类型用于指示通过服务器将目标请求由中间网络地址跳转至第一目标网络地址;第二跳转类型,其中,第二跳转类型用于指示通过模拟客户端将目标请求由中间网络地址跳转至第一目标网络地址;第三跳转类型,其中,第三跳转类型用于指示通过服务器将目标请求由中间网络地址跳转至第二目标网络地址,并将用于指示第二目标网络地址的信息返回至模拟客户端,通过模拟客户端将目标请求由第二目标网络地址跳转至第一目标网络地址。
可选地,跳转单元43包括:第二跳转模块,用于根据跳转类型将目标请求,由中间网络地址依次跳转多个第三网络地址,直至跳转至第一目标网络地址。
可选地,该装置还包括:设置单元,用于在确定目标请求的跳转类型之后,设置跳转类型的标识信息;跳转单元43包括:第三跳转模块,用于使用与标识信息对应的策略将目标请求由中间网络地址跳转至第一目标网络地址。
可选地,该实施例的模拟客户端为无头浏览器。
该实施例的网络地址信息的获取装置,应用于模拟客户端,模拟客户端用于模拟真实客户端的使用场景,通过第一获取单元41获取中间网络地址,其中,中间网络地址用于跳转至第一目标网络地址,通过第二获取单元42获取目标请求,并确定目标请求的跳转类型,通过跳转单元43,用于根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址,通过第三获取单元44获取通过目标请求访问第一目标网络地址得到的目标信息,通过提取单元45从目标信息中提取出用于指示第一目标网络地址的信息。也就是说,利用模拟客户端的特性,确定目标请求的跳转类型,根据跳转类型将目标请求跳转至第一目标网络地址,并从目标请求访问第一目标网络地址得到的目标信息中提取出用于指示第一目标网络地址的信息,由于针对任何类型的跳转方式,从而达到了提高获取目标网络地址的效率的技术效果,解决了获取目标网络地址的效率低的技术问题。
实施例4
在该实施例中,所述网络地址信息的获取装置包括处理器和存储器,上述第一获取单元41、第二获取单元42、跳转单元43、第三获取单元44和提取单元45均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来达到提高获取目标网络地址的效率的目的。
实施例5
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述网络地址信息的获取方法。
实施例6
图5是根据本发明实施例的一种电子设备的示意图。如图5所示,该电子设备50包括至少一个处理器501、以及与处理器501连接的至少一个存储器502、总线503;其中,处理器501、存储器502通过总线503完成相互间的通信;处理器501用于调用存储器502中的程序指令,以执行上述的网络地址信息的获取方法。本文中的电子设备50可以是服务器、PC、PAD、手机等。
实施例7
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
获取中间网络地址,其中,中间网络地址用于跳转至第一目标网络地址;获取目标请求,并确定目标请求的跳转类型;根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址;获取通过目标请求访问第一目标网络地址得到的目标信息;从目标信息中提取出用于指示第一目标网络地址的信息。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:确定目标请求的跳转类型包括:从目标请求中获取第一响应头;根据第一响应头确定跳转类型。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:使用与跳转类型对应的策略将第一响应头由中间网络地址跳转至第一目标网络地址;
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:获取通过第一响应头访问第一目标网络地址得到的第二响应头;从第二响应头中提取出用于指示第一目标网络地址的信息。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:根据跳转类型将目标请求,由中间网络地址依次跳转多个第三网络地址,直至跳转至第一目标网络地址。
当在数据处理设备上执行时,还适于执行初始化有如下方法步骤的程序:在确定目标请求的跳转类型之后,设置跳转类型的标识信息;根据跳转类型将目标请求由中间网络地址跳转至第一目标网络地址包括:使用与标识信息对应的策略将目标请求由中间网络地址跳转至第一目标网络地址。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (7)
1.一种网络地址信息的获取方法,其特征在于,应用于模拟客户端,所述模拟客户端用于模拟真实客户端的使用场景,包括:
获取中间网络地址,其中,所述中间网络地址用于跳转至第一目标网络地址;
获取目标请求,并从所述目标请求中获取第一响应头;
根据所述第一响应头确定跳转类型;
使用与所述跳转类型对应的策略将所述第一响应头由所述中间网络地址跳转至所述第一目标网络地址;
获取通过所述第一响应头访问所述第一目标网络地址得到的第二响应头;
从所述第二响应头中提取出用于指示所述第一目标网络地址的信息;
所述方法还包括:设置所述跳转类型的标识信息;使用与所述标识信息对应的策略将所述目标请求由所述中间网络地址跳转至所述第一目标网络地址。
2.根据权利要求1所述的方法,其特征在于,根据所述第一响应头确定出的所述跳转类型包括以下之一:
第一跳转类型,其中,所述第一跳转类型用于指示通过服务器将所述目标请求由所述中间网络地址跳转至所述第一目标网络地址;
第二跳转类型,其中,所述第二跳转类型用于指示通过所述模拟客户端将所述目标请求由所述中间网络地址跳转至所述第一目标网络地址;
第三跳转类型,其中,所述第三跳转类型用于指示通过服务器将所述目标请求由所述中间网络地址跳转至第二目标网络地址,并将用于指示所述第二目标网络地址的信息返回至所述模拟客户端,通过所述模拟客户端将所述目标请求由所述第二目标网络地址跳转至所述第一目标网络地址。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述跳转类型将所述目标请求,由所述中间网络地址依次跳转多个第三网络地址,直至跳转至所述第一目标网络地址。
4.根据权利要求1至3中任意一项所述的方法,其特征在于,所述模拟客户端为无头浏览器。
5.一种网络地址信息的获取装置,其特征在于,应用于模拟客户端,所述模拟客户端用于模拟真实客户端的使用场景,包括:
第一获取单元,用于获取中间网络地址,其中,所述中间网络地址用于跳转至第一目标网络地址;
第二获取单元,用于获取目标请求,并从所述目标请求中获取第一响应头;
第一跳转单元,用于根据所述第一响应头确定跳转类型;
第二跳转单元,用于使用与所述跳转类型对应的策略将所述第一响应头由所述中间网络地址跳转至所述第一目标网络地址;
第三获取单元,用于获取通过所述第一响应头访问所述第一目标网络地址得到的第二响应头;
提取单元,用于从所述第二响应头中提取出用于指示所述第一目标网络地址的信息;
所述装置还包括:设置所述跳转类型的标识信息;使用与所述标识信息对应的策略将所述目标请求由所述中间网络地址跳转至所述第一目标网络地址。
6.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至4中任意一项所述的方法。
7.一种电子设备,其特征在于,所述电子设备包括至一个处理器、以及与所述处理器连接的至少一个存储器、总线;
其中,所述处理器、所述存储器通过所述总线完成相互间的通信;
所述处理器用于调用所述存储器中的程序指令,以执行如权利要求1至4中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910900667.XA CN112541136B (zh) | 2019-09-23 | 2019-09-23 | 网络地址信息的获取方法、装置、存储介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910900667.XA CN112541136B (zh) | 2019-09-23 | 2019-09-23 | 网络地址信息的获取方法、装置、存储介质和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112541136A CN112541136A (zh) | 2021-03-23 |
CN112541136B true CN112541136B (zh) | 2024-02-13 |
Family
ID=75012918
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910900667.XA Active CN112541136B (zh) | 2019-09-23 | 2019-09-23 | 网络地址信息的获取方法、装置、存储介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112541136B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11777908B1 (en) * | 2021-06-24 | 2023-10-03 | Gen Digital Inc. | Protecting against a tracking parameter in a web link |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462183A (zh) * | 2014-10-10 | 2015-03-25 | 北京国双科技有限公司 | 网页跳转处理方法及装置 |
CN108848032A (zh) * | 2018-05-18 | 2018-11-20 | 湖南科技大学 | 一种支持多兴趣类型处理的命名对象网络实现方法 |
CN108897612A (zh) * | 2018-07-17 | 2018-11-27 | 北京京东金融科技控股有限公司 | 路由跳转的方法和装置 |
CN109587097A (zh) * | 2017-09-29 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 一种实现安全访问内部网络的系统、方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9609085B2 (en) * | 2011-07-28 | 2017-03-28 | Hewlett-Packard Development Company, L.P. | Broadcast-based update management |
-
2019
- 2019-09-23 CN CN201910900667.XA patent/CN112541136B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462183A (zh) * | 2014-10-10 | 2015-03-25 | 北京国双科技有限公司 | 网页跳转处理方法及装置 |
CN109587097A (zh) * | 2017-09-29 | 2019-04-05 | 阿里巴巴集团控股有限公司 | 一种实现安全访问内部网络的系统、方法和装置 |
CN108848032A (zh) * | 2018-05-18 | 2018-11-20 | 湖南科技大学 | 一种支持多兴趣类型处理的命名对象网络实现方法 |
CN108897612A (zh) * | 2018-07-17 | 2018-11-27 | 北京京东金融科技控股有限公司 | 路由跳转的方法和装置 |
Non-Patent Citations (1)
Title |
---|
路由器级拓扑发现目标地址选择问题研究;刘影,胡博,左敦稳,董庆超,邹珊;《南京邮电大学学报(自然科学版)》;第30卷(第6期);6 * |
Also Published As
Publication number | Publication date |
---|---|
CN112541136A (zh) | 2021-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10289275B2 (en) | Standard commands for native commands | |
US7987243B2 (en) | Method for media discovery | |
CN109213948B (zh) | 网页加载方法、中间服务器和网页加载系统 | |
US20150248302A1 (en) | Method, apparatus, server and system for implementing web application | |
CN106933871A (zh) | 短链接处理方法、装置及短链接服务器 | |
CN103997452A (zh) | 多平台之间的信息分享方法及装置 | |
CN105095280A (zh) | 一种浏览器缓存方法和装置 | |
WO2011050368A1 (en) | Configurable and dynamic transformation of web content | |
CN107105336B (zh) | 数据处理方法及数据处理装置 | |
US10158691B2 (en) | Method and apparatus for providing network resources at intermediary server | |
CN104572777A (zh) | 基于UIWebView组件的网页加载方法及装置 | |
CN109033302A (zh) | 一种页面跳转方法、装置、终端及存储介质 | |
US20170277622A1 (en) | Web Page Automated Testing Method and Apparatus | |
CN105095220B (zh) | 一种浏览器实现方法、终端和虚拟化代理装置 | |
EP2959402B1 (en) | Architecture for remote access to content state | |
CN105871961B (zh) | 一种灰度发布路由的方法及装置 | |
CN109344351B (zh) | 网页加载方法、中间服务器和网页加载系统 | |
CN104615597A (zh) | 浏览器中清除缓存文件的方法、装置和系统 | |
CN112541136B (zh) | 网络地址信息的获取方法、装置、存储介质和电子设备 | |
CN103546829A (zh) | 一种视频业务处理方法及设备 | |
JP2011043924A (ja) | Web行動履歴取得システム、Web行動履歴取得方法、ゲートウェイ装置、及びプログラム | |
CN107766224B (zh) | 测试方法和测试装置 | |
US10095791B2 (en) | Information search method and apparatus | |
CN108664493B (zh) | 统计url是否有效的方法、装置、电子设备和存储介质 | |
CN114915565B (zh) | 网络调试的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |