CN110069683A - 一种基于浏览器爬取数据的方法及装置 - Google Patents

一种基于浏览器爬取数据的方法及装置 Download PDF

Info

Publication number
CN110069683A
CN110069683A CN201710842546.5A CN201710842546A CN110069683A CN 110069683 A CN110069683 A CN 110069683A CN 201710842546 A CN201710842546 A CN 201710842546A CN 110069683 A CN110069683 A CN 110069683A
Authority
CN
China
Prior art keywords
data
target pages
browser
page
file
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.)
Granted
Application number
CN201710842546.5A
Other languages
English (en)
Other versions
CN110069683B (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.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum 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 Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201710842546.5A priority Critical patent/CN110069683B/zh
Publication of CN110069683A publication Critical patent/CN110069683A/zh
Application granted granted Critical
Publication of CN110069683B publication Critical patent/CN110069683B/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/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45529Embedded in an application, e.g. JavaScript in a Web browser

Landscapes

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

Abstract

本发明公开了一种基于浏览器爬取数据的方法及装置,涉及互联网技术领域,能够保证了爬取网络数据的完整性、准确性,同时也提高了爬取工作效率,本发明的主要技术方案为:在浏览器的标签页中加载目标页面;判断所述目标页面中的异步加载数据是否加载完成;若完成,则在所述标签页中嵌入数据爬取脚本文件;利用所述数据爬取脚本文件爬取所述目标页面的数据内容,所述数据内容包括所述异步加载数据。本发明主要应用于基于浏览器爬取数据。

Description

一种基于浏览器爬取数据的方法及装置
技术领域
本发明涉及互联网技术领域,尤其涉及一种基于浏览器爬取数据的方法及装置。
背景技术
随着互联网技术的不断发展,极快瑞(jQuery)、AngularJS(JavaScript框架)、阿贾克斯(Asynchronous Javascript And XML,AJAX)、层叠样式表(Cascading StyleSheets,CSS)等WEB前端技术被广泛应用在网页开发技术领域,使得网页的加载方式和网页的设计样式变得越来越丰富,从而极大的提升了用户体验。
目前,在大数据时代,人们通常利用网络爬虫爬取网站资源内容来实现对网络数据的采集,并将其整合成数据信息库,以便于对不同领域的技术研究提供数据支持。然而,由于WEB前端技术的普及应用,使得大量网页的数据内容已经不再是通过一次加载就能全部呈现在网页中,使得现有的网络爬虫爬取不到网页中被异步加载的数据,比如AJAX异步加载的数据,所以需要通过人工的方式对待爬取的网页进行分析,并手动调取对应的接口程序,在上述人工操作的准备工作完成后,再利用网络爬虫爬取当前网页的数据内容,可是上述的人工操作需要工作人员具备一定的专业知识和业务素质,并且人工操作也不可避免出现对网页分析错误以及其导致的调取接口程序失败的问题,最终使得网络爬虫爬取网页而获得的数据是不全面的,从而导致网络爬虫爬取的数据存在缺失、不够准确。
发明内容
有鉴于此,本发明提供一种基于浏览器爬取数据的方法及装置,主要目的在于通过在浏览器中嵌入数据爬取文件,能够爬取到网页中异步加载的数据内容,保证了爬取网络数据的完整性、准确性,同时也提高了爬取工作效率。
为了解决上述问题,本发明主要提供如下技术方案:
一方面,本发明提供了一种基于浏览器爬取数据的方法,该方法包括:
在浏览器的标签页中加载目标页面;
判断所述目标页面中的异步加载数据是否加载完成;
若完成,则在所述标签页中嵌入数据爬取脚本文件;
利用所述数据爬取脚本文件爬取所述目标页面的数据内容,所述数据内容包括所述异步加载数据。
优选的,利用所述数据爬取脚本文件爬取所述目标页面的数据内容包括:
根据所述目标页面的网页链接,确定所述目标页面对应的网站域名;
从预先存储的规则文件中查找与所述网站域名对应的网站所包含的规则文件,所述规则文件中包含页面中的元素路径信息;
根据所述规则文件生成所述目标页面对应的元素路径配置文件;
根据所述元素路径配置文件中包含的元素路径信息,所述数据爬取脚本文件爬取所述目标页面的数据内容。
优选的,所述根据所述元素路径配置文件中包含的元素路径信息,利用所述数据爬取脚本文件爬取所述目标页面的数据内容包括:
当检测到所述目标页面中的元素包含隐藏链接时,模拟用户执行点击所述隐藏链接的操作实现页面的跳转;
根据所述页面的跳转,所述数据爬取脚本文件爬取所述隐藏链接对应的页面的数据内容。
优选的,所述判断所述目标页面中的异步加载数据是否加载完成包括:
当浏览器异步加载所述目标页面中的数据内容时,利用预置网络监控器监控所述浏览器向其对应的服务器发送的异步加载请求以及所述对应的服务器向所述浏览器发送的异步加载响应回复;
判断所述异步加载请求与所述异步加载响应回复的数量是否相同;
若相同,则确定所述目标页面中的异步加载数据加载完成。
优选的,所述在浏览器的标签页中加载目标页面包括:
当加载目标页面发生网址临时重定向时,则获取所述网址临时重定向所指向的网页链接;
将所述网页链接对应的页面,确定为目标页面。
优选的,所述方法还包括:
当所述数据爬取脚本文件在爬取目标页面的数据内容时,判断所述预置网络监控器监控浏览器的应用程序编程接口中是否有所述浏览器向第三方流量监控软件发送的访问请求;
若有,则拦截所述访问请求。
为了实现上述目的,根据本发明的另一方面,提供了一种存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行上述所述的基于浏览器爬取数据的方法。
为了实现上述目的,根据本发明的另一方面,提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述所述的基于浏览器爬取数据的方法。
另一方面,本发明还提供了一种基于浏览器爬取数据的装置,该装置包括:
加载单元,用于在浏览器的标签页中加载目标页面;
判断单元,用于判断所述加载单元加载所述目标页面中的异步加载数据是否加载完成;
嵌入单元,用于当所述判断单元判断所述目标页面中的异步加载数据加载完成时,在所述标签页中嵌入数据爬取脚本文件;
爬取单元,用于利用所述嵌入单元嵌入的所述数据爬取脚本文件爬取所述目标页面的数据内容,所述数据内容包括所述异步加载数据。
优选的,所述爬取单元包括:
确定模块,用于根据所述目标页面的网页链接,确定所述目标页面对应的网站域名;
查找模块,用于在预置规则服务器中查找与所述确定模块确定的所述网站域名对应的网站所包含的规则文件,所述预置规则服务器用于存储与网站所对应的规则文件,所述规则文件中包含页面中的元素路径信息;
生成模块,用于根据所述查找模块查找的所述规则文件生成所述目标页面对应的元素路径配置文件;
爬取模块,用于根据所述生成模块生成的元素路径配置文件中包含的元素路径信息,利用所述数据爬取脚本文件爬取所述目标页面的数据内容。
优选的,所述爬取模块包括:
模拟子模块,用于当检测到所述目标页面中的页面元素包含隐藏链接时,模拟用户执行点击所述隐藏链接的操作实现页面的跳转;
爬取子模块,用于根据所述模拟子模块模拟用户执行点击所述隐藏链接的操作实现页面的跳转时,所述数据爬取脚本文件爬取所述隐藏链接对应的页面的数据内容。
优选的,所述判断单元包括:
监控模块,用于当浏览器异步加载所述目标页面中的数据内容时,利用预置网络监控器监控所述浏览器向其对应的服务器发送的异步加载请求以及所述对应的服务器向所述浏览器发送的异步加载响应回复,所述预置网络监控器用于监控浏览器的应用程序编程接口中交互传输的数据内容;
判断模块,用于判断所述监控模块监控的所述异步加载请求与所述异步加载响应回复的数量是否相同;
确定模块,用于当所述判断模块判断所述异步加载请求与所述异步加载响应回复的数量相同时,确定所述目标页面中的异步加载数据加载完成。
优选的,所述加载单元包括:
获取模块,用于当加载目标页面发生网址临时重定向时,则获取所述网址临时重定向所指向的网页链接;
确定模块,用于将所述获取模块获取的所述网页链接对应的页面,确定为目标页面。
优选的,所述装置还包括:
所述判断单元,还用于当所述数据爬取脚本文件在爬取目标页面的数据内容时,判断所述预置网络监控器监控浏览器的应用程序编程接口中是否有所述浏览器向第三方流量监控软件发送的访问请求;
拦截单元,用于当所述判断单元判断浏览器的应用程序编程接口中有所述浏览器向第三方流量监控软件发送的访问请求时拦截所述访问请求。
借由上述技术方案,本发明提供的技术方案至少具有下列优点:
本发明提供的一种基于浏览器爬取数据的方法及装置,本发明通过在浏览器的标签页中嵌入数据爬取脚本文件,并利用数据爬取脚本文件爬取网页中加载的数据内容,并且数据内容中包括网页异步加载数据,与现有技术相比较,本发明不需要人工操作,并且解决了网络爬虫爬取不到网页中异步加载数据,而需要必要的人工操作对网页进行分析,并手动调取对应的接口程序,但是人工操作又不可避免的出现对网页的分析错误,进而导致网络爬虫爬取到的网页中数据内容存在缺失、不够准确的问题,本发明通过在浏览器中嵌入数据爬取文件,能够爬取到网页中异步加载的数据内容,保证了爬取网络数据的完整性、准确性,同时也提高了爬取工作效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例提供的一种基于浏览器爬取数据的方法流程图;
图2为本发明实施例提供的另一种基于浏览器爬取数据的方法流程图;
图3为本发明实施例提供的基于浏览器爬取数据的工作流程图;
图4为本发明实施例提供的一种基于浏览器爬取数据的装置的组成框图;
图5为本发明实施例提供的另一种基于浏览器爬取数据的装置的组成框图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种基于浏览器爬取数据的方法,如图1所示,该方法是通过在浏览器的标签页中嵌入数据爬取脚本文件,并利用该数据爬取脚本文件能够实现爬取标签页中加载的目标页面所包含的异步加载数据,对此本发明实施例提供以下具体步骤:
101、在浏览器的标签页中加载目标页面。
其中,目标页面是指浏览器的标签页中所打开的网页,用于作为待爬取的网页,比如在Chrome浏览器的标签页中打开新浪微博首页。
在本发明实施例中,网页是一个包含超文本标记语言(Hyper Text MarkupLanguage,HTML)标签的纯文本文件,当在浏览器的标签页中打开一个网页时,浏览器(客户端侧)会向服务器发送所要访问的HTML文件的请求,服务器中存储网站所包含的全部HTML文件信息,在通过超文本传输协议(Hyper Text Transfer Protocol,HTTP)实现浏览器与网络服务器的信息交互过程中,服务器响应请求,并将请求所对应的HTML文件返回浏览器,通过浏览器加载,在浏览器的标签页中呈现该网页的内容信息。
102、判断目标页面中的异步加载数据是否加载完成。
其中,异步加载数据是指在通过HTTP协议实现浏览器(客户端侧)与服务器的信息交互过程中,服务器对异步加载请求的处理所产生的数据内容。其中,异步加载请求是指浏览器(客户端侧)与与服务器之间的通信方式是异步请求/响应模型,即浏览器向服务器发送异步加载请求,网络服务器响应该请求,并在异步请求/响应对的处理过程中,在客户端侧,不需要等待服务器返回的响应异步加载请求的数据内容,用户还是可以继续浏览网页并获取信息,并且用户在多次浏览网页的同时即实现浏览器多次向服务器发送异步加载请求,并且当服务器对接收的异步加载请求处理完毕时,服务器会将响应异步加载请求的数据内容返回浏览器。相对于典型的同步请求/响应模型,在服务器处理同步的请求/响应期间,浏览器需要等待服务器响应同步请求的数据内容,否则不能继续使用浏览器。
例如,基于阿贾克斯技术(Asynchronous JavaScript And XML,AJAX)实现浏览器与服务器的通信过程中,AJAX的核心是JavaScript对象和XmlHttpRequest,并且XmlHttpRequest可以使用JavaScript在不刷新当前页面的情况下向服务器提出请求,服务器处理请求并将响应请求的数据内容返回浏览器,则浏览器实现无需重新加载当前页面的情况下,能够更新局部网页。比如,用户在使用浏览器浏览新浪微博时,在当前网页并未被刷新的情况下,点击微博评论,则关于该条微博的评论内容信息会显示在当前页面上,实现对当前页面的局部更新。
在本发明实施例中,对于打开网页时网页所呈现的内容信息,当未触发网页中的事件时,比如,例举的点击微博评论,网页中异步加载的数据是不能显示在当前网页中的,所以需要判断当前网页中异步加载数据是否完成,以便于当利用数据爬取脚本文件爬取当前网页的内容信息时,不仅能够爬取到打开网页时当前网页所呈现的内容信息以及当前网页中加载的异步加载数据。
103、若目标页面中的异步加载数据加载完成,则在标签页中嵌入数据爬取脚本文件。
其中,数据爬取脚本文件是指利用JavaScript脚本语言编写的脚本文件,用于根据层叠样式表(Cascading Style Sheets),CSS)中规定的元素路径信息爬取网页中的数据内容。
在本发明实施例中,当判断在浏览器的标签页中打开的当前网页的异步加载数据加载完成时,通过浏览器接口,在标签页中嵌入数据爬取脚本文件。
104、利用数据爬取脚本文件爬取目标页面的数据内容。
其中,爬取的目标页面的数据内容包括所述异步加载数据,该异步加载数据是指在通过HTTP协议实现客户端与服务器的信息交互过程中,网络服务器对异步加载请求的处理所产生的数据内容。
例如,对于在浏览器的标签页中打开的微博页面,当利用数据爬取脚本文件爬取该页面的内容信息时,不仅要爬取到打开微博页面所呈现的内容信息,也要爬取到在该页面中触发事件,比如转发微博事件、微博评论事件等等,当触发事件时,会在该页面中呈现与事件相关的内容信息。
本发明实施例提供的一种基于浏览器爬取数据的方法,本发明实施例通过在浏览器的标签页中嵌入数据爬取脚本文件,并利用数据爬取脚本文件爬取网页中加载的数据内容,并且数据内容中包括网页异步加载数据,与现有技术相比较,本发明不需要人工操作,并且解决了网络爬虫爬取不到网页中异步加载数据,而需要必要的人工操作对网页进行分析,并手动调取对应的接口程序,但是人工操作又不可避免的出现对网页的分析错误,进而导致网络爬虫爬取到的网页中数据内容存在缺失、不够准确的问题,本发明实施例通过在浏览器中嵌入数据爬取文件,能够爬取到网页中异步加载的数据内容,保证了爬取网络数据的完整性、准确性,同时也提高了爬取工作效率。
基于对上述实施例中各步骤的具体实现方式,本发明实施例提供了另一种基于浏览器爬取数据的方法,如图2所示,该方法是通过利用嵌入的数据爬取脚本文件,根据网站所对应的CSS层叠样式表中包含的元素路径信息,爬取页面中元素所在位置对应的数据内容。对此本发明实施例提供以下具体步骤:
201、在浏览器的标签页中加载目标页面。
在本发明实施例中,将在浏览器的标签页中打开的网页作为待爬取的网页,并且在打开网页时,当加载的页面发生网址临时重定向时,比如在标签页中输入的网页链接如下:
https://www.baidu.com/link?url=j-xzg3ikFXWVoZC2z20lXx-tH_DjzDhJrX-BSTDejw_&wd=&eqid=e02c74390000274800000002597845e4
其中,在网页链接中通过“link”实现网址临时重定向,则将“link”后的“url”指向的网页链接,确定为在该标签页中打开的网页,即作为待爬取的网页。
202、判断目标页面中的异步加载数据是否加载完成。
在本发明实施例中,当浏览器的标签页中加载目标页面时,判断目标页面中异步加载数据是否完成的步骤,包括:
第一,当浏览器异步加载目标页面中的数据内容时,利用预置网络监控器监控浏览器向其对应的服务器发送的异步加载请求以及对应的服务器向浏览器发送的异步加载响应回复。
其中,预置网络监控器用于监控浏览器的应用程序编程接口(ApplicationProgram Interface,API)中交互传输的数据内容。在本发明实施例中,可以利用JavaScript脚本语言编写网络监控器,将该网络监控器嵌入浏览器的标签页中,当浏览器的标签页中加载目标页面时,通过监控浏览器API,以实现监控浏览器与服务器之间的信息交互,并可以监控浏览器向服务器发送的异步加载请求以及服务器接收到该异步加载请求,并向浏览器发送的响应回复。
第二,判断异步加载请求与异步加载响应回复的数量是否相同。
在本发明实施例中,利用预置网络监控器监控浏览器API中浏览器向服务器发送的异步加载请求数量,以及服务器向浏览器发送的异步加载响应回复数量,并根据请求数量与响应回复数量是否相同,判断浏览器向服务器发送的异步加载请求,是否都得到了网络服务器的响应。
第三,若异步加载请求与异步加载响应回复的数量是相同,则确定目标页面中的异步加载数据加载完成。
在本发明实施例中,当预置网络监控器监控API中浏览器向服务器发送的异步加载请求数量与服务器向浏览器发送的异步加载响应回复数量相同时,那么表明在通过HTTP协议实现浏览器与服务器的信息交互过程中,服务器接收到浏览器发送的异步加载请求,并对每个异步加载请求进行处理,实现响应每个异步加载请求,并将响应每个异步加载请求的数据内容返回浏览器,据此,能够实现网页中异步加载数据完成。
在本发明实施例中,为便于快速地利用数据爬取脚本文件实现爬取页面中文字以及文字链接的数据内容,可以在目标页面加载数据内容的过程中,利用预置网络监控器,将图片、页面样式等信息屏蔽,以实现减少加载页面所需的数据流量,并快速实现页面加载完成。
203、若目标页面中的异步加载数据加载完成,则在标签页中嵌入数据爬取脚本文件。
其中,数据爬取脚本文件是指利用JavaScript脚本语言编写的脚本文件,用于根据网站所对应的层叠样式表(Cascading Style Sheets),CSS)中包含的元素路径信息爬取网页中的内容信息。
在本发明实施例中,当判断在浏览器的标签页中打开的当前网页的异步加载数据加载完成时,通过浏览器接口,在标签页中嵌入数据爬取脚本文件。
204、利用数据爬取脚本文件爬取目标页面的数据内容。
在本发明实施例中,利用数据爬取脚本文件爬取目标页面的数据内容的具体步骤,包括:
第一,根据目标页面的网页链接,确定目标页面对应的网站域名。
在本发明实施例中,当在浏览器的标签页中打开目标页面时,可以根据目标页面的网页链接,获知该目标页面的网站域名,即该目标页面所属于的网站信息。
例如,打开的目标页面的网页链接如下:
http://slide.news.sina.com.cn/slide_1_86058_197275.html#p=1
那么对于上述网页链接,其对应的网站域名是www.sina.com.cn,则可以确定该目标页面是属于新浪网的网页。
第二,从预先存储的规则文件中查找与网站域名对应的网站所包含的规则文件。
其中,规则文件是指网页的样式信息文件,比如对网页中包含的文字、图片、超链接、音频、视频、动画等页面内容信息所设置显示规则信息,并且每个网站在设计时所设置的规则文件都是不同的,在本发明实施例中,可以采用现有抓取网站所对应的规则文件的方法,比如分析网站的编写代码,并提取出其中的CSS代码包含的样式内容信息。对于本发明实施例,可以将多个网站所对应的规则文件存储在预置规则服务器中,并以网站域名建立索引,以便于根据网站域名可以查找网站所对应的规则文件。
需要说明的是,在编辑网站时,是将网站中页面内容与页面的样式分开处理的,利用HTML文件编辑页面的内容,而利用CSS文件控制页面样式,并且将不同页面样式所对应的CSS文件存储在CSS样式表中,据此,能够实现通过CSS样式表对网站所包含的页面样式信息进行管理,所以预置规则服务器中存储的网站所对应的规则文件,即是与网站对应的CSS文件并存储在CSS样式表。如此这样,将页面内容与页面的样式分开,以便于当对网页样式进行修改时,可以不必对每个页面中的HTML文件进行修改,而是修改CSS样式表中存储的CSS文件即可。
例如,对于一个微博页面,其排版布局为左、中、右,并且在编写HTML文件时,左侧排版中包含三个序列表,按照页面中自上而下的位置顺序,第一个序列表中包括内容信息是“首页、我的收藏、我的赞”,第二个序列表中包含的内容信息是“热门微博、热门视频”以及第三个序列表中包含的内容信息是“好友圈、特别关注、美容服饰、名人明星、视频电影、新闻热点、旅游”等分类标题,页面的中间排版为更新的微博动态、页面的右侧排版为微博账号信息,此处对于页面的中间排版及右侧排版不作具体例举。当对该页面中左侧排版中的字体颜色进行修改时,可以不必对HTML文件中字体属性依次进行修改,而是通过CSS样式表中存储该页面的左侧排版CSS文件进行修改,即修改该页面的左侧排版样式中字体颜色即可。
第三,根据规则文件生成目标页面对应的元素路径配置文件。
其中,规则文件中包含页面中的元素路径信息,即网站对应的CSS样式表中包含页面中元素的路径信息,页面中的元素是指在页面中显示的文字、图片、超链接、音频、视频、动画等等内容信息。元素的路径信息是指对于CSS样式表中存储的控制元素样式的CSS文件(每个CSS文件都描述元素在页面中的位置信息)当某个元素所对应的CSS文件存在多个时,即为在页面中呈现该元素的样式需要将元素的多个样式层叠,那么由多个CSS文件层叠所呈现的元素所在页面中的位置信息,即是元素的路径信息。
需要说明的是,利用CSS的网页排版技术是先将页面进行分块,再将对应的页面元素填入页面排版的区域块中,例如,在利用CSS技术实现对页面排版时所采用的CSS盒子模型,该模型是由4个属性组成,包括:内容、边框、内边距以及外边距。当页面中的区域块被看作是一个盒子时,即实现一个盒子在页面上占据的空间是由“内容+内边距+外边距+边框”组成,页面可以是由大大小小许多个盒子组成,并且盒子之间彼此影响,比如盒子之间相邻、存在重叠以及嵌套(存在父区域块与子区域块的关系),据此,通过盒子的内边距与外边距属性可以得到盒子在页面中的位置信息,并且盒子的内容属性中可以包含多个页面元素,在网页设计时,一般将多个存在相关信息的页面元素放置在同一个盒子里,比如对微博页面的排版中左侧排版放置用户关注的微博账号的分类,包括:好友圈、特别关注、新闻热点、名人明星、电视电影、以及展开,并且为实现样式的多样化,还可以将上述每个分类信息设置成一个盒子,即实现父盒子中嵌套子盒子。如此这样,当每一个盒子呈现的样式对应于CSS样式表中的CSS文件时,并且当为呈现页面元素的样式,而将多个CSS文件层叠时,即根据CSS文件包含的内边距及外边距样式信息,可以得到页面中元素路径信息。
在本发明实施例中,编写浏览器插件,并利用该浏览器插件加载规则文件中的元素路径信息,以生成元素路径配置文件,用于数据爬取脚本文件可以根据元素路径配置文件中包含的元素路径信息,爬取页面元素所在页面中位置所对应的数据内容。
例如,如下CSS样式表中,根据CSS文件所确定的元素路径的代码:
body>div.weibo_TV.weibo_player>div.weibo_player_wrap.clearfix>div.weibo_container.clearfix>div.weibo_player_fb.W_fl>div.player_oper>div>div>div.WB_feed_repeat.S_bg1.WB_feed_repeat_v3>div>div.repeat_list>div:nth-child(2)>div>div>div:nth-child(2)>div.list_con>div.WB_text
其中,div是CSS式样表中的定位技术,每个div代表页面排版中的区域块,即通过页面中区域块之间的关系,实现确定页面中元素的路径信息。
第四,根据元素路径配置文件中包含的元素路径信息,利用数据爬取脚本文件爬取目标页面的数据内容。
在本发明实施例中,根据上述步骤中利用浏览器插件加载规则文件中的元素路径信息,生成元素路径配置文件,数据爬取脚本文件实现爬取页面元素所在页面中位置所对应的内容信息。
例如,根据上述例举的元素路径的代码,实现利用数据爬取脚本文件爬取页面中多个区域块嵌套而获得的元素路径所对应的内容信息。
需要说明的是,由于网站所对应的层叠式样表是在网站建设时所设置的网站布局规则,并且该层叠式样表中包含页面元素的路径信息,那么根据网站布局规则,元素所在页面中的位置信息是确定的,所以当根据配置文件中包含的元素路径信息,爬取网页中的内容时,能够实现爬取页面中元素所在位置所对应的数据内容,进而能够爬取到网页中加载的数据内容,其中数据内容中包括异步加载。
进一步的,在本发明实施例中,当数据爬取脚本文件在爬取页面内容时,数据爬取脚本文件发生暂停爬取时,可能是由于页面中的元素包含隐藏链接,比如页面中存在的按钮属性的元素,导致数据爬取脚本文件获取不到超链接而不能实现页面跳转,进而暂停爬取行为,因此,当检测到目标页面中元素包含隐藏链接时,模拟用户执行点击隐藏链接的操作,进而实现页面跳转,数据爬取脚本文件在跳转后的页面,继续实现爬取当前页面的数据内容。
205、当数据爬取脚本文件在爬取目标页面的数据内容时,判断预置网络监控器监控浏览器的应用程序编程接口中是否有浏览器向第三方流量监控软件发送的访问请求。
其中,预置网络监控器,用于监控浏览器的应用程序编程接口中交互传输的数据内容。
其中,第三方流量监控软件是指具有云计算、云存储功能,并能对大数据进行分析的软件,作为第三方被网站聘用,用于统计网站的访问量,以便于网站可以利用第三方流量监控软件返回的访问量相关数据分析用户的访问行为。
在本发明实施例中,当数据爬取脚本文件在爬取目标页面的数据内容时,会产生相当数量的页面访问量,由于该页面访问量并非是由用户浏览页面的访问行为所产生的,其目的是为了获取网页中的数据内容,对网站而言,这些页面访问量是虚假的访问量,所以当第三方流量监控软件获取到这些页面访问量,并将访问量的相关数据返回网站时,势必会对网站通过统计访问量来分析用户访问行为的分析结果造成影响。因此,可以采用预置网络监控器监控浏览器的应用程序编程接口中是否存在浏览器向第三方流量监控软件发送的访问请求,并根据监控结果可以判断是否有浏览器向第三方流量监控软件发送的访问请求,以便于拦截访问请求,防止第三方流量监控软件统计到非用户浏览页面的访问行为所产生的访问量。
206、若判断浏览器的应用程序编程接口中有浏览器向第三方流量监控软件发送的访问请求时则拦截数据爬取脚本文件向第三方流量监控软件发送的在爬取目标页面的数据内容时所发生的访问请求。
在本发明实施例中,利用预置网络监控器所具有监控浏览器的应用程序编程接口中交互传输的数据内容的用途,当根据监控到浏览器向第三方流量监控软件发送的访问请求所判断浏览器的应用程序编程接口中存在浏览器向第三方流量监控软件发送的访问请求时,拦截访问请求,以防止第三方流量监控软件统计到非用户浏览页面的访问行为所产生的访问量。
在本发明实施例中,当数据爬取脚本文件爬取完目标页面中的数据内容时,将爬取结果发送至大数据存储服务器,在将爬取结果存储到大数据服务器之前,需要对数据进行整合处理,比如,检测异常数据,删除重复爬取数据等等,对于本发明实施例,利用大数据存储服务器收集数据爬取脚本文件所爬取的数据内容,以便于为大数据分析提供数据支持,比如分析网站内容分类、分析网站布局规则等等。
对于本发明实施例,根据上述的基于浏览器爬取数据的方法,对利用数据爬取脚本文件爬取目标页面的过程,本发明实施例还提供的基于浏览器爬取数据的工作流程图,如图3所示,那么对该工作流程图作出简要的描述包括:第一,在浏览器的标签页中打开网页,作为待爬取的目标页面,当打开网页发生网址的临时重定向时,则将网址临时重定向所指向的网页作为目标页面;第二,在浏览器的标签页添加网络监控器,用于监控目标页面在加载数据内容时其包含的异步加载数据是否加载完成,以及为便于爬取页面加载的数据信息,可以在加载页面时将页面的图片以及样式信息屏蔽,减少爬取的数据流量;第三,当页面数据内容加载完成时,其中包含异步加载数据,则从预置规则服务器中获取页面所属网站所对应的规则文件,以及向浏览器的标签页中嵌入数据爬取脚本文件,以实现根据规则文件包含的元素路径信息,利用数据爬取脚本文件爬取页面的数据内容;第四,在爬取页面的数据内容时会出现暂停爬取的情况,那可能是由于页面中元素包含隐藏的网页链接,据此,需要模拟用户操作,点击隐藏的网页链接实现继续爬取工作;第五,将爬取结果进行整合,比如检测异常数据,删除重复爬取数据等等,并将整合后的爬取结果发送至大数据存储服务器,以便于为大数据分析提供数据支持。
进一步的,作为对上述图1、图2所示方法的实现,本发明另一实施例还提供了一种基于浏览器爬取数据的装置。该装置实施例与前述方法实施例对应,为便于阅读,本装置实施例不再对前述方法实施例中的细节内容进行逐一赘述,但应当明确,本实施例中的装置能够对应实现前述方法实施例中的全部内容。该装置应用于在浏览器中嵌入数据爬取脚本文件,利用其实现爬取浏览器的标签页中目标页面所加载的数据内容,并且该数据内容包含异步加载数据,具体如图4所示,该装置包括:
加载单元31,用于在浏览器的标签页中加载目标页面;
判断单元32,用于判断所述加载单元31加载所述目标页面中的异步加载数据是否加载完成;
嵌入单元33,用于当所述判断单元32判断所述目标页面中的异步加载数据加载完成时,在所述标签页中嵌入数据爬取脚本文件;
爬取单元34,用于利用所述嵌入单元33嵌入的所述数据爬取脚本文件爬取所述目标页面的数据内容,所述数据内容包括所述异步加载数据。
在本发明实施例中,通过在浏览器的标签页中嵌入数据爬取脚本文件,并利用数据爬取脚本文件爬取网页中加载的数据内容,并且数据内容中包括网页异步加载数据,进而保证了爬取网络数据的完整性、准确性,同时也提高了爬取工作效率
为实现利用数据爬取脚本文件根据页面中元素路径信息实现爬取页面的数据内容,如图5所示,所述爬取单元34包括:
确定模块341,用于根据所述目标页面的网页链接,确定所述目标页面对应的网站域名;
查找模块342,用于从预先存储的规则文件中查找与所述确定模块341确定的所述网站域名对应的网站所包含的规则文件,所述预置规则服务器用于存储与网站所对应的规则文件,所述规则文件中包含页面中的元素路径信息;
生成模块343,用于根据所述查找模块342查找的所述规则文件生成所述目标页面对应的元素路径配置文件;
爬取模块344,用于根据所述生成模块343生成的元素路径配置文件中包含的元素路径信息,利用所述数据爬取脚本文件爬取所述目标页面的数据内容。
当数据爬取脚本文件在爬取页面中数据内容时存在暂停爬取的情况时,可能是由于页面中元素包含隐藏链接,为实现数据爬取脚本文件继续爬取页面的数据内容,如图5所示,所述爬取模块344包括:
模拟子模块3441,用于当检测到所述目标页面中的元素包含隐藏链接时,模拟用户执行点击所述隐藏链接的操作实现页面的跳转;
爬取子模块3442,用于根据所述模拟子模块3441模拟用户执行点击所述隐藏链接的操作实现页面的跳转时,所述数据爬取脚本文件爬取所述隐藏链接对应的页面的数据内容。
在浏览器中嵌入数据爬取脚本文件之前,需要确定页面中加载的数据内容是否包括异步加载数据,如图5所示,所述判断单元32包括:
监控模块321,用于当浏览器异步加载所述目标页面中的数据内容时,利用预置网络监控器监控所述浏览器向其对应的服务器发送的异步加载请求以及所述对应的服务器向所述浏览器发送的异步加载响应回复,所述预置网络监控器用于监控浏览器的应用程序编程接口中交互传输的数据内容;
判断模块322,用于判断所述监控模块321监控的所述异步加载请求与所述异步加载响应回复的数量是否相同;
确定模块323,用于当所述判断模块322判断所述异步加载请求与所述异步加载响应回复的数量相同时,确定所述目标页面中的异步加载数据加载完成。
当在浏览器的标签页中加载页面时若存在网址临时重定向,则需要确定数据爬取脚本文件待爬取的页面是网页临时重定向所指向的页面,如图5所示,所述加载单元31包括:
获取模块311,用于当加载目标页面发生网址临时重定向时,则获取所述网址临时重定向所指向的网页链接;
确定模块312,用于将所述获取模块311获取的所述网页链接对应的页面,确定为目标页面。
对于网站而言,一般是聘用第三方流量监控软件监控网站的访问量,由于数据爬取脚本文件爬取页面的数据内容所产生的访问量不是用户浏览网页的访问行为,其对于网站而言是虚假的访问量,所以应该利用预置网络监控器拦截该虚假流量,以防止第三方流量监控软件接收到,如图5所示,所述装置还包括:
所述判断单元32,用于当所述数据爬取脚本文件在爬取目标页面的数据内容时,判断所述预置网络监控器监控浏览器的应用程序编程接口中是否有所述浏览器向第三方流量监控软件发送的访问请求;
拦截单元35,用于当所述判断单元32判断浏览器的应用程序编程接口中有所述浏览器向第三方流量监控软件发送的访问请求时拦截所述访问请求。
综上所述,本发明实施例提供的一种基于浏览器爬取数据的方法及装置,本发明实施例通过在浏览器的标签页中嵌入数据爬取脚本文件,并利用浏览器插件加载页面元素路径信息所生成的配置文件,实现根据配置文件中包含的元素路径信息,利用数据爬取脚本文件爬取网页中的数据内容,由于网站所对应的层叠式样表是在网站建设时所设置的网站布局规则,并且该层叠式样表中包含页面元素的路径信息,那么根据网站布局规则,元素所在页面中的位置信息是确定的,所以当根据配置文件中包含的元素路径信息,爬取网页中的内容时,能够实现爬取页面中元素所在位置所对应的数据内容,进而能够爬取到网页中加载的数据内容,其中数据内容中包括异步加载数据,保证了爬取网络数据的完整性、准确性,同时也提高了爬取工作效率。此外,利用预置网络监控器监控到浏览器向第三方流量监控软件发送的访问请求,拦截访问请求,以防止第三方流量监控软件统计到非用户浏览页面的访问行为所产生的访问量,避免这些虚假访问量对网站通过统计访问量来分析用户访问行为的分析结果造成影响。
所述基于浏览器爬取数据的装置包括处理器和存储器,上述加载单元、判断单元、嵌入单元和爬取单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来能够利用数据爬取脚本文件能够爬取到网页中异步加载的数据内容,保证了爬取网络数据的完整性、准确性,同时也提高了爬取工作效率。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述的基于浏览器爬取数据的方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述的基于浏览器爬取数据的方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
一种基于浏览器爬取数据的方法,所述方法包括:在浏览器的标签页中加载目标页面;判断所述目标页面中的异步加载数据是否加载完成;若完成,则在所述标签页中嵌入数据爬取脚本文件;利用所述数据爬取脚本文件爬取所述目标页面的数据内容,所述数据内容包括所述异步加载数据。
进一步的,所述利用所述数据爬取脚本文件爬取所述目标页面的数据内容包括:根据所述目标页面的网页链接,确定所述目标页面对应的网站域名;从预先存储的规则文件中查找与所述网站域名对应的网站所包含的规则文件,所述预置规则服务器用于存储与网站所对应的规则文件,所述规则文件中包含页面中的元素路径信息;根据所述规则文件生成所述目标页面对应的元素路径配置文件;根据所述元素路径配置文件中包含的元素路径信息,所述数据爬取脚本文件爬取所述目标页面的数据内容。
进一步的,所述根据所述元素路径配置文件中包含的元素路径信息,利用所述数据爬取脚本文件爬取所述目标页面的数据内容包括:当检测到所述目标页面中的元素包含隐藏链接时,模拟用户执行点击所述隐藏链接的操作实现页面的跳转;根据所述页面的跳转,所述数据爬取脚本文件爬取所述隐藏链接对应的页面的数据内容。
进一步的,所述判断所述目标页面中的异步加载数据是否加载完成包括:当浏览器异步加载所述目标页面中的数据内容时,利用预置网络监控器监控所述浏览器向其对应的服务器发送的异步加载请求以及所述对应的服务器向所述浏览器发送的异步加载响应回复;判断所述异步加载请求与所述异步加载响应回复的数量是否相同;若相同,则确定所述目标页面中的异步加载数据加载完成。
进一步的,所述在浏览器的标签页中加载目标页面包括:当加载目标页面发生网址临时重定向时,则获取所述网址临时重定向所指向的网页链接;将所述网页链接对应的页面,确定为目标页面。
进一步的,所述方法还包括:当所述数据爬取脚本文件在爬取目标页面的数据内容时,判断所述预置网络监控器监控浏览器的应用程序编程接口中是否有所述浏览器向第三方流量监控软件发送的访问请求;若有,则拦截所述访问请求。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:在浏览器的标签页中加载目标页面;判断所述目标页面中的异步加载数据是否加载完成;若完成,则在所述标签页中嵌入数据爬取脚本文件;利用所述数据爬取脚本文件爬取所述目标页面的数据内容,所述数据内容包括所述异步加载数据。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

1.一种基于浏览器爬取数据的方法,其特征在于,所述方法包括:
在浏览器的标签页中加载目标页面;
判断所述目标页面中的异步加载数据是否加载完成;
若完成,则在所述标签页中嵌入数据爬取脚本文件;
利用所述数据爬取脚本文件爬取所述目标页面的数据内容,所述数据内容包括所述异步加载数据。
2.根据权利要求1所述的方法,其特征在于,所述利用所述数据爬取脚本文件爬取所述目标页面的数据内容包括:
根据所述目标页面的网页链接,确定所述目标页面对应的网站域名;
从预先存储的规则文件中查找所述网站域名对应的网站所包含的规则文件,所述规则文件中包含页面中元素路径信息;
根据所述规则文件生成所述目标页面对应的元素路径配置文件;
根据所述元素路径配置文件中包含的元素路径信息,利用所述数据爬取脚本文件爬取所述目标页面的数据内容。
3.根据权利要求2所述的方法,其特征在于,所述根据所述元素路径配置文件中包含的元素路径信息,利用所述数据爬取脚本文件爬取所述目标页面的数据内容包括:
当检测到所述目标页面中的元素包含隐藏链接时,模拟用户执行点击所述隐藏链接的操作实现页面的跳转;
根据所述页面的跳转,所述数据爬取脚本文件爬取所述隐藏链接对应的页面的数据内容。
4.根据权利要求1所述的方法,其特征在于,所述判断所述目标页面中的异步加载数据是否加载完成包括:
当浏览器异步加载所述目标页面中的数据内容时,利用预置网络监控器监控所述浏览器向其对应的服务器发送的异步加载请求以及所述对应的服务器向所述浏览器发送的异步加载响应回复,所述预置网络监控器用于监控浏览器的应用程序编程接口中交互传输的数据内容;
判断所述异步加载请求与所述异步加载响应回复的数量是否相同;
若相同,则确定所述目标页面中的异步加载数据加载完成。
5.根据权利要求1所述的方法,其特征在于,所述在浏览器的标签页中加载目标页面包括:
当加载目标页面发生网址临时重定向时,则获取所述网址临时重定向所指向的网页链接;
将所述网页链接对应的页面,确定为目标页面。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当所述数据爬取脚本文件在爬取目标页面的数据内容时,判断所述预置网络监控器监控浏览器的应用程序编程接口中是否有所述浏览器向第三方流量监控软件发送的访问请求;
若有,则拦截所述访问请求。
7.一种基于浏览器爬取数据的装置,其特征在于,所述装置包括:
加载单元,用于在浏览器的标签页中加载目标页面;
判断单元,用于判断所述加载单元加载所述目标页面中的异步加载数据是否加载完成;
嵌入单元,用于当所述判断单元判断所述目标页面中的异步加载数据加载完成时,在所述标签页中嵌入数据爬取脚本文件;
爬取单元,用于利用所述嵌入单元嵌入的所述数据爬取脚本文件爬取所述目标页面的数据内容,所述数据内容包括所述异步加载数据。
8.根据权利要求7所述的装置,其特征在于,所述爬取单元包括:
确定模块,用于根据所述目标页面的网页链接,确定所述目标页面对应的网站域名;
查找模块,用于从预先存储的规则文件中查找与所述确定模块确定的所述网站域名对应的网站所包含的规则文件,所述预置规则服务器用于存储与网站所对应的规则文件,所述规则文件中包含页面中的元素路径信息;
生成模块,用于根据所述查找模块查找的所述规则文件生成所述目标页面对应的元素路径配置文件;
爬取模块,用于根据所述生成模块生成的元素路径配置文件中包含的元素路径信息,利用所述数据爬取脚本文件爬取所述目标页面的数据内容。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行如权利要求1-6中任一项所述的基于浏览器爬取数据的方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行如权利要求1-6中任一项所述的基于浏览器爬取数据的方法。
CN201710842546.5A 2017-09-18 2017-09-18 一种基于浏览器爬取数据的方法及装置 Active CN110069683B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710842546.5A CN110069683B (zh) 2017-09-18 2017-09-18 一种基于浏览器爬取数据的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710842546.5A CN110069683B (zh) 2017-09-18 2017-09-18 一种基于浏览器爬取数据的方法及装置

Publications (2)

Publication Number Publication Date
CN110069683A true CN110069683A (zh) 2019-07-30
CN110069683B CN110069683B (zh) 2021-08-13

Family

ID=67364446

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710842546.5A Active CN110069683B (zh) 2017-09-18 2017-09-18 一种基于浏览器爬取数据的方法及装置

Country Status (1)

Country Link
CN (1) CN110069683B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274519A (zh) * 2020-01-20 2020-06-12 杭州熊猫智云企业服务有限公司 一种页面加载提速方法
CN111338522A (zh) * 2020-02-19 2020-06-26 望海康信(北京)科技股份公司 显示界面的布局方法、装置、电子设备及存储介质
CN111767111A (zh) * 2020-07-06 2020-10-13 网易(杭州)网络有限公司 页面数据处理方法及装置、电子设备和存储介质
CN111931024A (zh) * 2020-07-10 2020-11-13 北京邮电大学 一种针对动态网页的爬取方法、装置及电子设备
CN112637361A (zh) * 2020-12-29 2021-04-09 北京天融信网络安全技术有限公司 一种页面代理方法、装置、电子设备及存储介质
CN113343159A (zh) * 2021-08-06 2021-09-03 万商云集(成都)科技股份有限公司 一种从任意渠道快速获取数据并分析与存储的方法及系统
CN113343143A (zh) * 2021-05-24 2021-09-03 上海万物新生环保科技集团有限公司 一种流式加载网页模板的方法及设备
CN113704590A (zh) * 2021-09-06 2021-11-26 挂号网(杭州)科技有限公司 网页数据获取方法、装置、电子设备及存储介质
CN113742550A (zh) * 2021-08-20 2021-12-03 广州市易工品科技有限公司 基于浏览器的数据获取方法、装置和系统
CN113987318A (zh) * 2021-11-01 2022-01-28 盐城金堤科技有限公司 页面监控方法、装置、设备及计算机存储介质
CN114064161A (zh) * 2020-07-31 2022-02-18 阿里巴巴集团控股有限公司 生成页面的方法、装置及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101620630A (zh) * 2009-06-29 2010-01-06 北京黑米天成科技有限公司 一种基于js脚本的web行为数据采集模型
US7921353B1 (en) * 2007-04-09 2011-04-05 Oracle America, Inc. Method and system for providing client-server injection framework using asynchronous JavaScript and XML
CN103853717A (zh) * 2012-11-28 2014-06-11 纽海信息技术(上海)有限公司 网络爬虫
CN104683333A (zh) * 2015-02-10 2015-06-03 国都兴业信息审计系统技术(北京)有限公司 基于sdn的实现异常流量拦截的方法
CN104750463A (zh) * 2013-12-26 2015-07-01 任子行网络技术股份有限公司 一种插件开发方法及系统
CN106294885A (zh) * 2016-10-09 2017-01-04 华东师范大学 一种面向异构网页的数据收集与标注方法
CN107015986A (zh) * 2016-01-27 2017-08-04 北京国双科技有限公司 一种爬虫爬取网页的方法及装置
CN107122281A (zh) * 2017-03-17 2017-09-01 百度在线网络技术(北京)有限公司 移动应用加载监控方法和系统
CN107147645A (zh) * 2017-05-11 2017-09-08 北京安赛创想科技有限公司 网络安全数据的获取方法及装置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7921353B1 (en) * 2007-04-09 2011-04-05 Oracle America, Inc. Method and system for providing client-server injection framework using asynchronous JavaScript and XML
CN101620630A (zh) * 2009-06-29 2010-01-06 北京黑米天成科技有限公司 一种基于js脚本的web行为数据采集模型
CN103853717A (zh) * 2012-11-28 2014-06-11 纽海信息技术(上海)有限公司 网络爬虫
CN104750463A (zh) * 2013-12-26 2015-07-01 任子行网络技术股份有限公司 一种插件开发方法及系统
CN104683333A (zh) * 2015-02-10 2015-06-03 国都兴业信息审计系统技术(北京)有限公司 基于sdn的实现异常流量拦截的方法
CN107015986A (zh) * 2016-01-27 2017-08-04 北京国双科技有限公司 一种爬虫爬取网页的方法及装置
CN106294885A (zh) * 2016-10-09 2017-01-04 华东师范大学 一种面向异构网页的数据收集与标注方法
CN107122281A (zh) * 2017-03-17 2017-09-01 百度在线网络技术(北京)有限公司 移动应用加载监控方法和系统
CN107147645A (zh) * 2017-05-11 2017-09-08 北京安赛创想科技有限公司 网络安全数据的获取方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李婷: "分布式爬虫任务调度与AJAX页面抓取研究", 《中国优秀硕士学位论文全文数据库 信息科技辑(月刊)》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274519A (zh) * 2020-01-20 2020-06-12 杭州熊猫智云企业服务有限公司 一种页面加载提速方法
CN111338522A (zh) * 2020-02-19 2020-06-26 望海康信(北京)科技股份公司 显示界面的布局方法、装置、电子设备及存储介质
CN111767111A (zh) * 2020-07-06 2020-10-13 网易(杭州)网络有限公司 页面数据处理方法及装置、电子设备和存储介质
CN111767111B (zh) * 2020-07-06 2023-05-12 网易(杭州)网络有限公司 页面数据处理方法及装置、电子设备和存储介质
CN111931024A (zh) * 2020-07-10 2020-11-13 北京邮电大学 一种针对动态网页的爬取方法、装置及电子设备
CN114064161A (zh) * 2020-07-31 2022-02-18 阿里巴巴集团控股有限公司 生成页面的方法、装置及存储介质
CN114064161B (zh) * 2020-07-31 2023-12-22 阿里巴巴集团控股有限公司 生成页面的方法、装置及存储介质
CN112637361A (zh) * 2020-12-29 2021-04-09 北京天融信网络安全技术有限公司 一种页面代理方法、装置、电子设备及存储介质
CN112637361B (zh) * 2020-12-29 2022-09-16 北京天融信网络安全技术有限公司 一种页面代理方法、装置、电子设备及存储介质
CN113343143A (zh) * 2021-05-24 2021-09-03 上海万物新生环保科技集团有限公司 一种流式加载网页模板的方法及设备
CN113343159A (zh) * 2021-08-06 2021-09-03 万商云集(成都)科技股份有限公司 一种从任意渠道快速获取数据并分析与存储的方法及系统
CN113742550A (zh) * 2021-08-20 2021-12-03 广州市易工品科技有限公司 基于浏览器的数据获取方法、装置和系统
CN113742550B (zh) * 2021-08-20 2024-04-19 广州市易工品科技有限公司 基于浏览器的数据获取方法、装置和系统
CN113704590A (zh) * 2021-09-06 2021-11-26 挂号网(杭州)科技有限公司 网页数据获取方法、装置、电子设备及存储介质
CN113987318A (zh) * 2021-11-01 2022-01-28 盐城金堤科技有限公司 页面监控方法、装置、设备及计算机存储介质
CN113987318B (zh) * 2021-11-01 2024-03-12 盐城天眼察微科技有限公司 页面监控方法、装置、设备及计算机存储介质

Also Published As

Publication number Publication date
CN110069683B (zh) 2021-08-13

Similar Documents

Publication Publication Date Title
CN110069683A (zh) 一种基于浏览器爬取数据的方法及装置
CN106503134B (zh) 浏览器跳转至应用程序的数据同步方法及装置
US10146887B2 (en) Providing separate views for items
EP2433258B1 (en) Protected serving of electronic content
CN110020044A (zh) 一种爬虫的爬取方法及装置
CN104426925B (zh) 网页资源获取方法及装置
US20160140626A1 (en) Web page advertisement configuration and optimization with visual editor and automatic website and webpage analysis
CN104035753A (zh) 一种双WebView展示定制页面的方法及系统
CN107609135A (zh) 页面元素确定方法及设备、用户行为路径确定方法及装置
CN103412890A (zh) 一种网页加载方法和装置
CN108369709A (zh) 基于网络的广告数据业务时延减小
US9830304B1 (en) Systems and methods for integrating dynamic content into electronic media
CN106339414A (zh) 网页渲染方法及装置
US9690855B2 (en) Method and system for searching for a web document
CN108717435A (zh) 网页加载方法、信息处理方法、计算机设备及存储介质
CN110020339A (zh) 基于无埋点的网页数据采集方法及装置
CN107807937A (zh) 一种网站seo处理方法、装置及系统
CN107229760A (zh) 存储介质、电子装置、网页内容的显示方法和装置
CN109428776A (zh) 一种网站流量的监控方法及装置
US20200293160A1 (en) System for superimposed communication by object oriented resource manipulation on a data network
CN110213105A (zh) 一种跨平台微应用创建方法
CN106649299A (zh) 一种网页区块懒加载的方法和装置
CN103544271B (zh) 一种浏览器中加载图片处理窗口的方法和装置
CN105278977A (zh) 一种网页组件的加载方法和装置
CN104268246B (zh) 生成访问互联网站点指令脚本的方法及访问方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Applicant after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Beijing city Haidian District Shuangyushu Area No. 76 Zhichun Road cuigongfandian 8 layer A

Applicant before: Beijing Guoshuang 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