CN109948020A - 数据获取方法、装置、系统及可读存储介质 - Google Patents

数据获取方法、装置、系统及可读存储介质 Download PDF

Info

Publication number
CN109948020A
CN109948020A CN201910031983.8A CN201910031983A CN109948020A CN 109948020 A CN109948020 A CN 109948020A CN 201910031983 A CN201910031983 A CN 201910031983A CN 109948020 A CN109948020 A CN 109948020A
Authority
CN
China
Prior art keywords
data
page
target
client
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.)
Pending
Application number
CN201910031983.8A
Other languages
English (en)
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.)
Beijing Sankuai Online Technology Co Ltd
Original Assignee
Beijing Sankuai Online Technology 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 Beijing Sankuai Online Technology Co Ltd filed Critical Beijing Sankuai Online Technology Co Ltd
Priority to CN201910031983.8A priority Critical patent/CN109948020A/zh
Publication of CN109948020A publication Critical patent/CN109948020A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本公开公开了一种数据获取方法、装置、系统及可读存储介质。所述方法,包括:在客户端触发访问目标网页时,请求所述客户端进行数据获取授权;响应于所述用户确认授权,获取所述目标网页的页面截图;对所述页面截图进行数据解析,获取所述页面截图对应的页面数据并保存。由此解决了现有的数据获取方法很难完全绕过反爬虫机制,而且为了避开反爬虫机制,还需要不断修改代理服务器和更改用户账户,从而导致数据获取成本较高且操作繁琐的技术问题。取得了可以绕过反爬虫机制获取数据,从而降低数据获取成本以及操作繁琐性的有益效果。

Description

数据获取方法、装置、系统及可读存储介质
技术领域
本公开的实施例涉及计算机技术领域,具体涉及一种数据获取方法、装置、系统及可读存储介质。
背景技术
随着网络的迅速发展,万维网成为大量信息的载体,如何有效地提取并利用这些信息成为一个巨大的挑战。为了解决上述问题,抓取相关网页资源的爬虫技术应运而生。爬虫是一个自动下载网页的程序,它根据既定的抓取目标,有选择的访问万维网上的网页与相关的链接,获取所需要的信息。
目前的数据获取方式主要通过爬虫技术,通过请求url(统一资源定位符),抓取返回的页面数据,再根据页面数据进行正则表达式匹配等来实现数据解析,然后将解析的数据入库。但是,由于爬虫在使用的过程中往往会由于单个IP(InternetProtocol,网络协议)或某个IP段发送大量的请求而被识别并封禁相应的IP或IP段。而且,由于现有通过爬虫技术发送的请求信息中没有携带任何浏览器相关的数据,因而很容易被识别为爬虫,并封禁相应的IP。现有的爬虫技术主要是通过网络代理解决ip的封禁问题,但是网络代理仍然存在在使用一段时间之后即被识别为爬虫从而被封的问题,从而导致需要不断的进行代理修改,维护成本比较高。而通过模拟浏览器等操作在某些情况下也需要不停的更改用户账号来避免账号受到封禁。
由上述分析可知,现有的数据获取方式很难完全绕过反爬虫机制,而且为了避开反爬虫机制,还需要不断修改代理服务器和更改用户账户,从而导致数据获取成本较高且操作繁琐。
发明内容
本公开的实施例提供一种数据获取方法、装置、系统及可读存储介质,以部分或全部解决现有技术中数据获取过程相关的上述问题。
依据本公开的实施例第一方面,提供了一种数据获取方法,包括:
在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;
根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;
识别所述显示页面中包含的页面数据并保存。
根据本公开的实施例第二方面,提供了一种数据获取装置,包括:
目标数据获取模块,用于在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;
目标数据渲染模块,用于根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;
页面数据识别模块,用于识别所述显示页面中包含的页面数据并保存。
根据本公开的实施例第三方面,提供了一种数据获取系统,其特征在于,包括:电子设备和服务器,
其中,所述电子设备和所述服务器均包含存储器、处理器和通信组件;所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如前述的数据获取方法。
根据本公开的实施例第四方面,提供了一种可读存储介质,当所述存储介质中的指令由电子设备和/或服务器的处理器执行时,使得电子设备和/或服务器能够执行如前述的数据获取方法。
根据本公开的数据获取方法,可以在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;识别所述显示页面中包含的页面数据并保存。由此解决了现有的数据获取方法很难完全绕过反爬虫机制,而且为了避开反爬虫机制,还需要不断修改代理服务器和更改用户账户,从而导致数据获取成本较高且操作繁琐的技术问题。
上述说明仅是本公开技术方案的概述,为了能够更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为了让本公开的上述和其它目的、特征和优点能够更明显易懂,以下特举本公开的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本公开的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本公开一个实施例的一种数据获取方法的步骤流程图;
图2示出了根据本公开一个实施例的一种数据获取方法的步骤流程图;
图3示出了根据本公开一个实施例的一种数据获取装置的结构示意图;以及
图4示出了根据本公开一个实施例的一种数据获取装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
详细介绍本公开实施例提供的一种数据获取方法。
参照图1,示出了本公开实施例中一种数据获取方法的步骤流程图。
步骤110,在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据。
在本公开实施例中,为了能够及时获取得到目标网页的有效数据,可以通过用户在请求访问目标网页时,获取目标网页对应的网页服务器返回的目标数据。具体的可以通过任何可用方式获取目标网页对应的网页服务器返回的目标数据,对此本发明实施例不加以限定。例如,可以通过钩子函数勾取目标网页对应的网页服务器返回的目标数据,或者在相应的客户端接收到网页服务器返回的目标数据后,从客户端提取网页服务器返回的目标数据,等等。
其中,在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据,并未限定是在客户端触发访问目标网页的时刻,才可以获取所述目标网页对应的网页服务器返回的目标数据,而是在客户端触发访问目标网页的情况下,获取所述目标网页对应的网页服务器返回的目标数据。其中目标数据的具体获取时机可以包括:在网页服务器开始返回目标数据到客户端接收到相应的目标数据的过程中;或者在客户端接收到相应的目标数据之后,从相应的客户端获取目标数据;等等。具体的目标数据的获取时机可以根据需求或者是客户端、服务器的性能而决定,对此本发明实施例不加以限定。
当然,在本发明实施例中,如果是在目标数据从网页服务器发送至客户端的过程中拦截获取到目标数据,那么为了避免影响相应客户端正常显示目标网页,还可以在识别得到目标网页对应的页面数据之后,将页面数据返回至客户端,以使客户端根据页面数据正常渲染显示目标网页。
另外,在本公开实施例中,客户端可以通过任何可用方式触发访问目标网页,对此本公开实施例不加以限定。例如,客户端在接收到用户点击目标网页的网页链接后进而触发访问目标网页,或者可以在接收到用户点击其他指向目标网页的超链接等进而触发访问目标网页,等等。
其中,目标网页对应的网页服务器返回的目标数据具体所包含的内容可以根据需求进行预先设置,对此本发明实施例不加以限定。例如,可以设置目标数据为相应的网页服务器在接收到客户端针对目标网页的访问请求后,网页服务器针对相应的访问请求所返回的全部数据,或者可以设置目标数据包括但不限于超文本标记语言数据、层叠样式表数据、脚本语言数据中的至少一种,等等。
可选地,在本发明实施例中,所述步骤110进一步可以包括:从所述网页服务器返回的数据中获取未设置权限校验的公共数据作为所述目标数据。
在实际应用中,目标网页可能对应一些隐私信息、网页管理信息等等,需要进行权限校验之后才可以正常查看,而本发明实施例中的数据获取方案可以只需获取目标网页展示的公共内容即可,对于设置权限校验的数据则无法也无需进行权限校验。因此,在本发明实施例中,可以只从网页服务器返回的数据中获取未设置权限校验的公共数据作为所述目标数据。
其中的权限校验可以包括身份校验、密码校验等等,具体的可以根据需求进行预先设置,对此本发明实施例不加以限定。
步骤120,根据所述目标数据进行页面渲染,得到所述目标网页的显示页面。
在实际应用中,由于直接获取目标网页对应的网页服务器返回的目标数据,但是在目标数据中可能包含对于数据获取方而言无用的数据,而如果直接以获取得到的目标数据作为最终数据,那么后续还需要对获取得到的数据进行复杂的解析和筛选。而且对于数据获取方而言,数据获取的目的在于获取目标网页最终所展示的内容,因此,在本发明实施例中,为了避免获取过多无效数据,减少后续数据筛选操作,也即为了获取目标网页对应的有效页面数据,则可以根据目标数据进行页面渲染,以得到目标网页的显示页面。而且,在本发明实施例中,具体的可以通过任何可用方式根据目标数据进行页面渲染,对此本发明实施例不加以限定。
而且,在本发明实施例中,可以在客户端接收到目标网页对应的网页服务器返回的目标数据之后,由客户端根据目标数据进行页面渲染,得到所述目标网页的显示页面。例如,可以由客户端的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面。或者,也可以将获取得到的目标网页对应的网页服务器返回的目标数据发送至平台服务器,进而由平台服务器根据目标数据进行页面渲染,得到所述目标网页的显示页面。例如,通过平台服务器端预设的浏览器渲染引擎对所述公共数据进行页面渲染,得到所述目标网页的显示页面,等等。其中的平台服务器可以包括预设的专门做捕获的数据处理的服务器。当然也可以将预设的浏览器渲染引擎设置于客户端,进而在客户端通过预设的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面,对此本发明实施例不加以限定。
步骤130,识别所述显示页面中包含的页面数据并保存。
在渲染得到得到目标网页的显示页面之后,则可以进一步识别所述显示页面中包含的页面数据并保存。具体的可以通过任何可用方法识别显示页面中包含的页面数据,对此本公开实施例不加以限定。
例如,可以通过ocr(Optical CharacterRecognition,光学字符识别)服务对显示页面进行数据识别,从而获取得到显示页面中包含的页面数据,此时识别得到的页面数据是目标网页所展示的内容,相对于目标网页对应的全部目标数据,页面数据中包含的大部分为有效数据,因此可以将识别得到的页面数据进行保存,从而提高获取得到的数据的精准性以及有效性。
在本公开实施例中,可以分别设置不同的服务器实现不同的功能,那么此时对于渲染得到的目标网页的显示页面之后,则可以将显示页面或者显示页面的截图发送到对应的业务服务器,而相应的业务服务器在接收到显示页面或者显示页面的截图之后,则可以请求对应的ocr服务等等数据识别服务对相应的显示页面或者显示页面的截图进行数据识别,从而得到相应显示页面中包含的页面数据并保存。
根据本公开的数据获取方法,可以在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;识别所述显示页面中包含的页面数据并保存。由此可以绕过反爬虫机制获取数据,从而降低了数据获取成本。
实施例二
详细介绍本公开实施例提供的一种数据获取方法。
参照图2,示出了本公开实施例中一种数据获取方法的步骤流程图。
步骤210,在客户端处提供用于请求用户对抓取目标数据进行授权的第一接口。
步骤220,根据用户在第一接口输入的指令确定用户是否同意授权。
在本公开实施例中,为了能够及时获取得到目标网页的有效数据,可以通过在客户端请求访问目标网页的情况下,请求相应客户端的用户进行数据获取授权,以方便获取目标网页对应的网页服务器返回的目标数据。其中,可以通过任何可用方法请求用户进行数据获取授权,对此本公开实施例不加以限定。
那么为了可以快速获取得到目标数据,此时则可以在客户端处提供用于请求用户对抓取目标数据进行授权的第一接口,进而可以根据客户端的用户在第一接口输入的指令确定用户是否同意授权。其中第一接口的具体设置可以根据需求进行预先设置,对此本发明实施例不加以限定。同意授权对应的指令也可以根据需求进行预先设置,对此本发明实施例也不加以限定。
例如,可以在客户端处提供用于请求用户对抓取目标数据进行授权的第一接口,并且在检测到客户端触发访问目标网页时,即通过第一接口接收该客户端的用户针对本次访问输入的指令,而且在客户端可以通过弹出框的形式接收该客户端的用户针对本次访问输入的指令,在弹出框中可以显示例如“请求授权获取页面数据”等文字,以提示当前请求的具体请求内容,而且还可以在弹出框中设置确认授权控件和拒绝授权控件,以方便相应客户端的用户通过触发相应控件进而输入确认授权指令或者是拒绝授权指令。
另外,在本公开实施例中,客户端可以通过任何可用方式触发访问目标网页,对此本公开实施例不加以限定。例如,可以通过点击客户端中目标网页的网页链接进而触发访问目标网页,或者可以通过点击客户端中其他指向目标网页的超链接等进而触发访问目标网页,等等。
步骤230,在客户端触发访问目标网页时,在获得用户对抓取目标数据进行授权的情况下,获取所述目标网页对应的网页服务器返回的目标数据。
在获得客户端用户对抓取目标数据进行授权的情况下,则可以获取所述目标网页对应的网页服务器返回的目标数据。如前述,如果客户端用户点击请求客户端进行数据获取授权的弹出框中的确认授权控件,那么相应的客户端用户即授权抓取目标数据,那么此时则可以获取所述目标网页对应的网页服务器返回的目标数据。
步骤240,根据所述目标数据进行页面渲染,得到所述目标网页的显示页面。
在实际应用中,由于客户端本身的状态很难由除其用户之外的第三方进行控制,那么可能会出现用户所在客户端无法及时进行截图响应,从而无法及时对目标网页进行截图,或者是截图效果不理想等等问题,从而导致获取得到的页面截图不理想。在本公开实施例中,为了避免上述状况,可以对目标网页进行重新渲染并对重新渲染得到的网页进行截图,从而提高获取得到的目标网页的页面截图的准确性。那么为了实现目标网页的重新渲染,则需要获取目标网页的公共数据,因此可以响应于所述客户端授权获取数据,获取所述目标网页对应的网页服务器返回的目标数据。此时,客户端在触发访问目标网页时,目标网页所对应的网页服务器在接收到客户端的访问请求后,则可以将目标网页对应的目标数据反馈至客户端,那么此时在得到用户授权的情况下,则可以从相应的客户端获取目标网页所对应的网页服务器反馈至相应客户端的公共数据。
可选地,在本公开实施例中,所述目标数据包括超文本标记语言(html,HyperTextMarkup Language)数据、层叠样式表(CSS,Cascading Style Sheets)数据、脚本语言(js,JavaScript)数据中的至少一种。
可选地,在本发明实施例中,所述步骤240进一步可以包括:
子步骤A241,通过预设的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面;
或者,子步骤B241,通过所述客户端的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面。
在获取得到目标网页的目标数据之后,则可以通过预设的浏览器渲染引擎对相应的目标数据进行页面渲染,得到目标网页的显示页面。此时可以在上述的业务服务器中预设的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面。其中,服务器中预设的浏览器渲染引擎可以与客户端中设置的浏览器引擎相同,当然也可以不同,具体的可以根据需求进行预先设置。而且预设的浏览器渲染引擎的渲染效果,也即渲染后的显示页面的显示方式可以不同于客户端的浏览器渲染引擎对所述目标数据进行页面渲染后得到的显示页面的显示方式,当然也可以相同,具体也可以根据需求进行需求进行预先设置,对此本发明实施例不加以限定。
或者也可以通过客户端的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面。那么此时可以将相应网页服务器返回的目标数据返回至客户端,进而在客户端通过客户端的浏览器渲染引擎对目标数据进行页面渲染,得到目标网页的显示页面。
步骤250,在客户端处对所述显示页面进行截图,得到所述显示页面的页面截图,并将得到的页面截图发送到后台服务器。
在本发明实施例中,为了避免影响客户端针对目标网页访问请求的响应速度,可以在客户端处对所述显示页面进行截图,得到所述显示页面的页面截图,并将得到的页面截图发送到后台服务器。那么此时可以直接将网页服务器返回的目标数据发送至客户端并基于客户端的浏览器引擎进行渲染,得到目标网页的显示页面,进而在客户端出对显示页面进行截图,得到显示页面的页面截图,并将页面截图由客户端发送至后台服务器。其中的后台服务器可以包括上述的业务服务器。
此时可以采用任何可用截图方法对渲染后得到的显示页面进行截图,对此本公开实施例不加以限定。例如,可以对渲染后得到的显示页面采用上述的canvas技术进行页面截图,等等。
步骤260,在后台服务器处识别所述页面截图中包含的页面数据并保存。
在获取得到显示页面的页面截图之后,则可以进一步对页面截图进行识别,获取所述页面截图对应的页面数据并保存。具体的可以通过任何可用方法识别页面截图,对此本公开实施例不加以限定。而且,在实际应用中,客户端一般只需浏览目标网页即可,而无需获取页面截图中包含的页面数据,因此为了避免影响客户端的正常使用,可以在后台服务器处识别所述页面截图中包含的页面数据并保存。
例如,可以通过上述的ocr(Optical CharacterRecognition,光学字符识别)服务对接收到的图片进行数据解析,从而获取得到页面截图对应的页面数据,此时解析得到的页面数据是目标网页所展示的内容,相对于目标网页对应的全部公共数据,其中包含的大部分为有效数据,因此可以将解析得到的页面数据进行保存。
在本公开实施例中,可以分别设置不同的服务器实现不同的功能,那么此时对于获取得到的目标网页的页面截图之后,则可以将页面截图发送到对应的业务服务器,例如后台服务器,而相应的业务服务器在接收到该页面截图之后,则可以请求对应的ocr服务等等数据识别服务识别相应的页面截图,从而得到相应页面截图对应的页面数据并保存。
当前,在本发明实施例中,也可以在客户端识别页面截图,并将识别得到的页面数据发送至后台服务器并保存,那么此时客户端也无需将得到的页面截图发送到后台服务器。具体的可以根据需求进行预先设置,对此本发明实施例不加以限定。
另外,在本公开实施例中,如果在获取得到相应网页服务器针对目标网页的返回的目标数据时,可以是通过拦截目标网页对应的网页服务器反馈至相应客户端的目标数据并发送至后台服务器,从而在后台服务器根据所述目标数据进行页面渲染,得到所述目标网页的显示页面,进而识别所述显示页面中包含的页面数据并保存。那么此时则会影响相应客户端显示相应的目标网页的响应速度;或者如果在客户端触发访问目标网页的情况下,将目标网页对应的全部目标数据都反馈至相应客户端,那么相应客户端也可以接收到其中包含的无效数据,而如前述,对于客户端而言,其访问目标网页的目的一般也是在于查看目标网页所展示的内容,也即目标网页所对应的有效数据。
因此,在本公开实施例中,为了避免相应客户端接收到无效数据,同时保证相应客户端能够及时准确对目标网页的访问请求进行响应,可以在识别得到目标网页对应的页面截图中的包含页面数据之后,将页面数据发送至相应的客户端并显示。此时的页面数据可以认为目标网页所对应的有效数据。
具体的,可以通过任何可用方法将页面数据发送至客户端,对此本公开实施例不加以限定。例如,可以通过相应客户端中显示目标网页对应的接口层将页面数据传递至客户端,客户端将获取得到的页面数据进行渲染显示,以呈现目标网页。
根据本公开的数据获取方法,可以在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;识别所述显示页面中包含的页面数据并保存。由此可以绕过反爬虫机制获取数据,从而降低了数据获取成本。
而且,在本公开实施例中,还可以在客户端处对所述显示页面进行截图,得到所述显示页面的页面截图,并将得到的页面截图发送到后台服务器;在后台服务器处识别所述页面截图中包含的页面数据并保存。并且,通过预设的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面;或者,通过所述客户端的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面。在不影响客户端访问请求响应速度的同时,提高了识别得到的页面数据的准确性。
另外,在本公开实施例中,还可以从所述网页服务器返回的数据中获取未设置权限校验的公共数据作为所述目标数据。以及,在客户端处提供用于请求用户对抓取目标数据进行授权的第一接口;根据用户在第一接口输入的指令确定用户是否同意授权。并且,在客户端触发访问目标网页时,在获得用户对抓取目标数据进行授权的情况下,获取所述目标网页对应的网页服务器返回的目标数据。从而可以进一步降低数据获取被识别为爬虫的可能性,降低数据获取成本。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开实施例并不受所描述的动作顺序的限制,因为依据本公开实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本公开实施例所必须的。
实施例三
详细介绍本公开实施例提供的一种数据获取装置。
参照图3,示出了本公开实施例中一种数据获取装置的结构示意图。
目标数据获取模块310,用于在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;
目标数据渲染模块320,用于根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;
页面数据识别模块330,用于识别所述显示页面中包含的页面数据并保存。
根据本公开的数据获取方法,可以在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;识别所述显示页面中包含的页面数据并保存。由此可以绕过反爬虫机制获取数据,从而降低了数据获取成本。
实施例四
详细介绍本公开实施例提供的一种数据获取装置。
参照图4,示出了本公开实施例中一种数据获取装置的结构示意图。
第一接口设置模块410,用于在客户端处提供用于请求用户对抓取目标数据进行授权的第一接口。
授权确认模块420,用于根据用户在第一接口输入的指令确定用户是否同意授权。
目标数据获取模块430,用于在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据。
可选地,在本发明实施例中,所述目标数据获取模块430,进一步可以包括:
目标数据获取子模块431,用于在客户端触发访问目标网页时,在获得用户对抓取目标数据进行授权的情况下,获取所述目标网页对应的网页服务器返回的目标数据。
可选地,在本发明实施例中,所述目标数据获取模块430,还用于从所述网页服务器返回的数据中获取未设置权限校验的公共数据作为所述目标数据。
可选地,在本发明实施例中,所述目标数据包括超文本标记语言数据、层叠样式表数据、脚本语言数据中的至少一种。
目标数据渲染模块440,用于根据所述目标数据进行页面渲染,得到所述目标网页的显示页面。
可选地,在本发明实施例中,所述目标数据渲染模块440,进一步可以包括:
第一目标数据渲染子模块,用于通过预设的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面;
或者,第二目标数据渲染子模块,用于通过所述客户端的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面。
页面数据识别模块450,用于识别所述显示页面中包含的页面数据并保存。
可选地,在本发明实施例中,所述页面数据识别模块450,包括:
显示页面截图子模块451,用于在客户端处对所述显示页面进行截图,得到所述显示页面的页面截图,并将得到的页面截图发送到后台服务器;
页面数据识别子模块452,用于在后台服务器处识别所述页面截图中包含的页面数据并保存。
根据本公开的数据获取方法,可以在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;识别所述显示页面中包含的页面数据并保存。由此可以绕过反爬虫机制获取数据,从而降低了数据获取成本。
而且,在本公开实施例中,还可以在客户端处对所述显示页面进行截图,得到所述显示页面的页面截图,并将得到的页面截图发送到后台服务器;在后台服务器处识别所述页面截图中包含的页面数据并保存。并且,通过预设的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面;或者,通过所述客户端的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面。在不影响客户端访问请求响应速度的同时,提高了识别得到的页面数据的准确性。
另外,在本公开实施例中,还可以从所述网页服务器返回的数据中获取未设置权限校验的公共数据作为所述目标数据。以及,在客户端处提供用于请求用户对抓取目标数据进行授权的第一接口;根据用户在第一接口输入的指令确定用户是否同意授权。并且,在客户端触发访问目标网页时,在获得用户对抓取目标数据进行授权的情况下,获取所述目标网页对应的网页服务器返回的目标数据。从而可以进一步降低数据获取被识别为爬虫的可能性,降低数据获取成本。
本公开实施例还公开了一种数据获取系统,包括:电子设备和服务器,
其中,所述电子设备和所述服务器均包含存储器、处理器和通信组件;所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如前述的数据获取方法。
其中,电子设备可以包括前述的客户端,服务器可以包括前述的后端服务器。那么在电子设备中可以执行如前述客户端中执行的任意一个或多个步骤,在服务器中则可以执行如前述后端服务器中执行的任意一个或多个步骤。
本公开实施例中还公开了一种可读存储介质,当所述存储介质中的指令由电子设备和/或服务器的处理器执行时,使得电子设备和/或服务器能够执行前述的数据获取方法。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本公开也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本公开的内容,并且上面对特定语言所做的描述是为了披露本公开的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本公开的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本公开的示例性实施例的描述中,本公开的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本公开要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本公开的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本公开的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本公开的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本公开实施例的数据获取设备中的一些或者全部部件的一些或者全部功能。本公开还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本公开的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本公开进行说明而不是对本公开进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本公开可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (10)

1.一种数据获取方法,其特征在于,包括:
在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;
根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;
识别所述显示页面中包含的页面数据并保存。
2.根据权利要求1所述的方法,其特征在于,所述识别所述显示页面中包含的页面数据并保存的步骤,包括:
在客户端处对所述显示页面进行截图,得到所述显示页面的页面截图,并将得到的页面截图发送到后台服务器;
在后台服务器处识别所述页面截图中包含的页面数据并保存。
3.根据权利要求1所述的方法,其特征在于,所述根据所述公共数据进行页面渲染,得到所述目标网页的显示页面的步骤,包括:
通过预设的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面;
或者,通过所述客户端的浏览器渲染引擎对所述目标数据进行页面渲染,得到所述目标网页的显示页面。
4.根据权利要求1所述的方法,其特征在于,在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据的步骤之前,包括:
在客户端处提供用于请求用户对抓取目标数据进行授权的第一接口;
根据用户在第一接口输入的指令确定用户是否同意授权;
在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据的步骤,包括:
在客户端触发访问目标网页时,在获得用户对抓取目标数据进行授权的情况下,获取所述目标网页对应的网页服务器返回的目标数据。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述获取所述目标网页对应的网页服务器返回的目标数据的步骤,包括:
从所述网页服务器返回的数据中获取未设置权限校验的公共数据作为所述目标数据。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述目标数据包括超文本标记语言数据、层叠样式表数据、脚本语言数据中的至少一种。
7.一种数据获取装置,其特征在于,包括:
目标数据获取模块,用于在客户端触发访问目标网页时,获取所述目标网页对应的网页服务器返回的目标数据;
目标数据渲染模块,用于根据所述目标数据进行页面渲染,得到所述目标网页的显示页面;
页面数据识别模块,用于识别所述显示页面中包含的页面数据并保存。
8.根据权利要求7所述的装置,其特征在于,所述页面数据识别模块,包括:
显示页面截图子模块,用于在客户端处对所述显示页面进行截图,得到所述显示页面的页面截图,并将得到的页面截图发送到后台服务器;
页面数据识别子模块,用于在后台服务器处识别所述页面截图中包含的页面数据并保存。
9.一种数据获取系统,其特征在于,包括:电子设备和服务器,
其中,所述电子设备和所述服务器均包含存储器、处理器和通信组件;所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-6中一个或多个所述的数据获取方法。
10.一种可读存储介质,其特征在于,当所述存储介质中的指令由电子设备和/或服务器的处理器执行时,使得电子设备和/或服务器能够执行如权利要求1-6中一个或多个所述的数据获取方法。
CN201910031983.8A 2019-01-14 2019-01-14 数据获取方法、装置、系统及可读存储介质 Pending CN109948020A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910031983.8A CN109948020A (zh) 2019-01-14 2019-01-14 数据获取方法、装置、系统及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910031983.8A CN109948020A (zh) 2019-01-14 2019-01-14 数据获取方法、装置、系统及可读存储介质

Publications (1)

Publication Number Publication Date
CN109948020A true CN109948020A (zh) 2019-06-28

Family

ID=67007314

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910031983.8A Pending CN109948020A (zh) 2019-01-14 2019-01-14 数据获取方法、装置、系统及可读存储介质

Country Status (1)

Country Link
CN (1) CN109948020A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021042508A1 (zh) * 2019-09-06 2021-03-11 平安科技(深圳)有限公司 网页生成方法、装置、计算机设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080288475A1 (en) * 2007-05-17 2008-11-20 Sang-Heun Kim Method and system for automatically generating web page transcoding instructions
CN105404622A (zh) * 2014-08-20 2016-03-16 阿里巴巴集团控股有限公司 一种客户端页面显示方法、装置及系统
CN106156370A (zh) * 2016-08-29 2016-11-23 携程计算机技术(上海)有限公司 基于浏览器内置爬虫系统的爬虫实现方法
CN107368487A (zh) * 2016-05-12 2017-11-21 阿里巴巴集团控股有限公司 一种页面组件动态布局方法、装置及客户端
CN107689951A (zh) * 2017-07-26 2018-02-13 上海壹账通金融科技有限公司 网页数据爬取方法、装置、用户终端及可读存储介质
CN107704497A (zh) * 2017-08-25 2018-02-16 上海壹账通金融科技有限公司 网页数据爬取方法、装置、网页数据爬取平台及存储介质
CN108595583A (zh) * 2018-04-18 2018-09-28 平安科技(深圳)有限公司 动态图表类页面数据爬取方法、装置、终端及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080288475A1 (en) * 2007-05-17 2008-11-20 Sang-Heun Kim Method and system for automatically generating web page transcoding instructions
CN105404622A (zh) * 2014-08-20 2016-03-16 阿里巴巴集团控股有限公司 一种客户端页面显示方法、装置及系统
CN107368487A (zh) * 2016-05-12 2017-11-21 阿里巴巴集团控股有限公司 一种页面组件动态布局方法、装置及客户端
CN106156370A (zh) * 2016-08-29 2016-11-23 携程计算机技术(上海)有限公司 基于浏览器内置爬虫系统的爬虫实现方法
CN107689951A (zh) * 2017-07-26 2018-02-13 上海壹账通金融科技有限公司 网页数据爬取方法、装置、用户终端及可读存储介质
CN107704497A (zh) * 2017-08-25 2018-02-16 上海壹账通金融科技有限公司 网页数据爬取方法、装置、网页数据爬取平台及存储介质
CN108595583A (zh) * 2018-04-18 2018-09-28 平安科技(深圳)有限公司 动态图表类页面数据爬取方法、装置、终端及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021042508A1 (zh) * 2019-09-06 2021-03-11 平安科技(深圳)有限公司 网页生成方法、装置、计算机设备和存储介质

Similar Documents

Publication Publication Date Title
CN101631108B (zh) 为网络服务器的防火墙产生规则文件的方法和系统
CN103678487B (zh) 一种网页快照的生成方法和装置
US8601434B2 (en) Method and system for information processing and test case generation
CN101877696B (zh) 在网络应用环境下重构错误响应信息的设备和方法
CN102833212B (zh) 网页访问者身份识别方法及系统
US8739024B2 (en) Method and apparatus for processing world wide web page
US20060069671A1 (en) Methodology, system and computer readable medium for analyzing target web-based applications
CN107463641A (zh) 用于改进对搜索结果的访问的系统和方法
CN105635178B (zh) 保证安全的阻塞式网络访问方法及装置
CN105550596B (zh) 一种访问处理方法和装置
CN112637361B (zh) 一种页面代理方法、装置、电子设备及存储介质
CN104462583A (zh) 一种进行广告拦截处理浏览器装置和移动终端
CN105516333B (zh) 一种基于网页的交互方法和系统
CN107305528B (zh) 应用测试方法和装置
CN103179125A (zh) 网站认证信息的显示方法及浏览器
CN103117893A (zh) 一种网络访问行为的监控方法、装置和一种客户端设备
CN104363251A (zh) 网站安全检测方法与装置
CN108777687A (zh) 基于用户行为画像的爬虫拦截方法、电子设备、存储介质
CN106406914A (zh) 安卓系统窗口数据的获取方法及装置
CN108614762A (zh) 一种浏览器测试方法及装置
CN104021154A (zh) 一种在浏览器中进行搜索的方法和装置
CN107948148A (zh) 一种模拟代填的方法及装置
EP2973192B1 (en) Online privacy management
CN107729249A (zh) 浏览器兼容性测试方法、装置、系统及电子设备
CN109948020A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190628