CN111405033B - 数据采集方法、装置、计算机设备及存储介质 - Google Patents
数据采集方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111405033B CN111405033B CN202010173517.6A CN202010173517A CN111405033B CN 111405033 B CN111405033 B CN 111405033B CN 202010173517 A CN202010173517 A CN 202010173517A CN 111405033 B CN111405033 B CN 111405033B
- Authority
- CN
- China
- Prior art keywords
- data
- request
- filtering
- target
- header information
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/63—Routing a service request depending on the request content or context
-
- 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0236—Filtering by address, protocol, port number or service, e.g. IP-address or URL
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及数据采集方法、装置、计算机设备及存储介质,该方法包括设置过滤规则并设置代理应用程序的IP和端口,以得到中间代理应用程序;获取业务请求;判断过滤规则是否是过滤代理请求的请求头信息;若是,则根据业务请求通过中间代理应用程序请求对应的目标网站,以得到指定链接的数据包;通过指定链接的数据包过滤请求头信息并进行数据采集,以得到目标数据;将目标数据反馈至终端;若不是,则根据业务需求通过中间代理应用程序采集对应的目标网站的相关数据,以得到响应数据;根据过滤规则进行响应数据的过滤,以得到目标数据,并执行将目标数据反馈至终端。本发明实现高效采集数据,节省分析网站的时间成本,也可以节省设备资源。
Description
技术领域
本发明涉及计算机,更具体地说是指数据采集方法、装置、计算机设备及存储介质。
背景技术
业务系统在采集网页数据的时候采用的是模拟http请求的方法或者直接调用浏览器实例的方法来采集数据,但是模拟http请求在碰上动态(统一资源定位符,UniformResource Locator)结合cookies验证的问题时,只能花费大量的时间去分析API(应用程序接口,Application Programming Interface)参数,其所花费的时间成本太高,直接调用浏览器实例的方法需要大量的设备资源,并且大大的降低了效率。
因此,有必要设计一种新的方法,实现高效采集数据,节省分析网站的时间成本,也可以节省设备资源。
发明内容
本发明的目的在于克服现有技术的缺陷,提供数据采集方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:数据采集方法,包括:
设置过滤规则并设置代理应用程序的IP和端口,以得到中间代理应用程序;
获取业务请求;
判断所述过滤规则是否是过滤代理请求的请求头信息;
若所述过滤规则是过滤代理请求的请求头信息,则根据所述业务请求通过所述中间代理应用程序请求对应的目标网站,以得到指定链接的数据包;
通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据;
将目标数据反馈至终端,以使得终端显示所述目标数据;
若所述过滤规则不是过滤代理请求的请求头信息,则根据所述业务需求通过所述中间代理应用程序采集对应的目标网站的相关数据,以得到响应数据;
根据所述过滤规则进行响应数据的过滤,以得到目标数据,并执行所述将目标数据反馈至终端,以使得终端显示所述目标数据。
其进一步技术方案为:所述过滤规则包括过滤代理请求的请求头信息以及过滤页面内容。
其进一步技术方案为:所述代理请求的请求头信息包括URL信息以及cookies信息。
其进一步技术方案为:所述通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据,包括:
对所述指定链接的数据包进行分析,以得到数据以及代理请求,并获取代理请求的请求头信息;
将所述数据存储至数据库内;
将所述代理请求的请求头信息写至http请求对应的请求头参数中,以进行http请求的数据采集,以得到目标数据。
其进一步技术方案为:所述根据所述过滤规则进行响应数据的过滤,以得到目标数据,包括:
对所述响应数据进行分析,以得到目标URL;
过滤所述目标URL对应的数据包,以得到候选数据包;
根据所述业务请求对候选数据包进行筛选,以得到目标页面内容;
采用页面解析方法对所述目标页面内容进行解析,以得到目标数据。
其进一步技术方案为:所述候选数据包包括请求头以及对应的页面内容。
其进一步技术方案为:所述采用页面解析方法对所述目标页面内容进行解析,以得到目标数据,包括:
采用使用正则匹配方法、xpath解析方法、BeautifulSoup解析方法中至少一种方法对所述目标页面内容进行解析,以得到目标数据。
本发明还提供了数据采集装置,包括:
设置单元,用于设置过滤规则并设置代理应用程序的IP和端口,以得到中间代理应用程序;
请求获取单元,用于获取业务请求;
判断单元,用于判断所述过滤规则是否是过滤代理请求的请求头信息;
第一请求单元,用于若所述过滤规则是过滤代理请求的请求头信息,则根据所述业务请求通过所述中间代理应用程序请求对应的目标网站,以得到指定链接的数据包;
采集单元,用于通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据;
反馈单元,用于将目标数据反馈至终端,以使得终端显示所述目标数据;
第二请求单元,用于若所述过滤规则不是过滤代理请求的请求头信息,则根据所述业务需求通过所述中间代理应用程序采集对应的目标网站的相关数据,以得到响应数据;
数据过滤单元,用于根据所述过滤规则进行响应数据的过滤,以得到目标数据,并执行所述将目标数据反馈至终端,以使得终端显示所述目标数据。
本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。
本发明与现有技术相比的有益效果是:本发明通过设置过滤请求以及IP和端口,以此形成中间代理应用程序,通过中间代理应用程序根据业务请求对目标网站发起请求,并依据过滤请求获取对应的内容,并进行请求头或者页面内容的过滤,以实现滤出请求URL和cookies的信息头后再进行模拟http请求来快速获取数据;或者滤出目标页面,再通过解析页面来快速获取数据,实现高效采集数据,节省分析网站的时间成本,也可以节省设备资源。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的数据采集方法的应用场景示意图;
图2为本发明实施例提供的数据采集方法的流程示意图;
图3为本发明实施例提供的数据采集方法的子流程示意图;
图4为本发明实施例提供的数据采集方法的子流程示意图;
图5为本发明实施例提供的数据采集装置的示意性框图;
图6为本发明实施例提供的数据采集装置的采集单元的示意性框图;
图7为本发明实施例提供的数据采集装置的数据过滤单元的示意性框图;
图8为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的数据采集方法的应用场景示意图。图2为本发明实施例提供的数据采集方法的示意性流程图。该数据采集方法应用于服务器中,该服务器与终端进行数据交互,用户从终端发起业务请求后,经过设置的过滤规则以及指定的目标网站,对目标网站反馈的信息进行过滤,以进行不同方式地完成数据采集。
图2是本发明实施例提供的数据采集方法的流程示意图。如图2所示,该方法包括以下步骤S110至S180。
S110、设置过滤规则并设置代理应用程序的IP和端口,以得到中间代理应用程序。
在本实施例中,过滤规则是过滤出URL和cookies信息或者过滤出目标页面内容,采用不同的过滤规则可以达到不同方式地采集数据,用户可以依据自己的需求设定某一过滤规则进行对应内容的过滤,以高效采集数据。
具体地,所述过滤规则包括过滤代理请求的请求头信息以及过滤页面内容。所述代理请求的请求头信息包括URL信息以及cookies信息。
代理应用程序是指用于代表终端向指定的目标网站发起请求的应用程序,例如:mitmproxy、Squid等。
中间代理应用程序是指代理应用程序经过设定IP和端口后,与目标网站关联在一起后所形成的程序,另外,该目标网站是指业务请求中所要采集的数据所在的网站。
具体地,配置中间代理应用程序,需要对代理应用程序设置IP和端口,可以使本地服务器的IP和端口可以自行设置合适的端口且启动代理服务即可,后续的网站请求会通过中间代理应用程序请求,而中间代理应用程序的请求会通过配置的IP请求连接目标网站的服务器。
S120、获取业务请求。
在本实施例中,业务请求是指来自终端的用于请求采集某一指定数据的请求。
根据实际的业务请求,需要借助一些自动化工具进行自动请求目标网站,例如:PC端可以使用selenium工具进行自动化操作、移动端可以使用常用的appium、airtest等工具。在使用自动化工具进行自动化请求还需要通过设置代理IP的方式将前面的代理IP配置到自动化工具中进行请求目标网站。以实现高效采集数据,节省分析网站的时间成本,也可以节省设备资源。
S130、判断所述过滤规则是否是过滤代理请求的请求头信息。
当获取到业务请求时,先判断该过滤规则是属于哪一种,才可以针对不同的过滤规则进行不同方式地采集数据。是采用通过中间代理应用程序过滤出URL和cookies来模拟http请求采集数据,还是解析直接通过中间代理应用程序过滤出目标页面内容来采集数据。
S140、若所述过滤规则是过滤代理请求的请求头信息,则根据所述业务请求通过所述中间代理应用程序请求对应的目标网站,以得到指定链接的数据包。
在本实施例中,指定链接的数据包是指中间代理应用程序对目标网站发起请求后得到的响应内容。一般地,指定链接的数据包包括代理请求以及对应的数据,其中,代理请求是指向目标网站发起请求的过程中所形成的来自于目标网站的请求。
S150、通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据。
在本实施例中,目标数据是指过滤出请求头信息后将其加入至http请求内再次进行目标网站的数据采集,以此采集到的数据。
在一实施例中,还可以通过判断请求的URL的方法过滤掉一些无关的请求例如:广告连接、大的图片连接等,只保留一些包含所需数据的URL。例如:链接a中包含有需要采集的数据,而链接b中是一些广告或者是无关采集的图片请求,此时可以过滤掉链接b进行请求,只请求链接a,以此过滤出请求头信息。
在一实施例中,请参阅图3,上述的步骤S150可包括步骤S151~S153。
S151、对所述指定链接的数据包进行分析,以得到数据以及代理请求,并获取代理请求的请求头信息。
在本实施例中,代理请求和数据是存在格式上的差异的,可以采用的现有的格式分析等技术进行分析,以分出数据和代理请求。
在本实施例中,数据包括发起请求后目标网站所反馈的页面内容。
S152、将所述数据存储至数据库内。
将分析后的数据存储在数据库内,以作为后续备用。
S153、将所述代理请求的请求头信息写至http请求对应的请求头参数中,以进行http请求的数据采集,以得到目标数据。
将获取到请求头信息写到http请求的请求头参数中来进行http请求,最后达到数据采集工作的结果,以达到节省分析网站的时间成本,也可以大量的节省设备资源,提高数据采集效率。
S160、将目标数据反馈至终端,以使得终端显示所述目标数据。
将目标数据反馈至终端,以进行结果的反馈。
S170、若所述过滤规则不是过滤代理请求的请求头信息,则根据所述业务需求通过所述中间代理应用程序采集的目标网站的相关数据,以得到响应数据。
在本实施例中,响应数据包括中间代理应用程序对目标网站发起请求后从目标网站所采集到的数据包,一般包括页面响应的内容以及请求。
S180、根据所述过滤规则进行响应数据的过滤,以得到目标数据,并执行所述步骤S160。
在一实施例中,请参阅图4,上述的步骤S180可包括步骤S181~S184。
S181、对所述响应数据进行分析,以得到目标URL。
在本实施例中,根据业务请求对响应数据进行分析,以得到所需要采集的数据所在的URL。
具体地,目标URL是指业务请求所要采集的数据所在的URL。
S182、过滤所述目标URL对应的数据包,以得到候选数据包。
在本实施例中,目标URL下的数据包会有很多页面内容,因此,需要采用关键词等方式进行数据包的过滤,以得到候选的数据包。
S183、根据所述业务请求对候选数据包进行筛选,以得到目标页面内容。
在本实施例中,目标页面内容是指包括业务请求所要采集的数据所在的所有页面内容。
具体地,可采用关键词以及条件匹配的方式进行候选数据包的筛选,以得到目标页面内容。
具体地,所述候选数据包包括请求头以及对应的页面内容。可以采用请求头匹配的方式,将与业务请求匹配的请求头所对应的页面内容挑选出来,以此形成目标页面内容。
S184、采用页面解析方法对所述目标页面内容进行解析,以得到目标数据。
具体地,采用使用正则匹配方法、xpath解析方法、BeautifulSoup解析方法中至少一种方法对所述目标页面内容进行解析,以得到目标数据。
使用常见的页面解析方法进行页面解析得到需要的数据,以此形成目标数据。
上述的数据采集方法节省分析动态URL和cookies的时间成本,提高数据采集的效率,以及提高数据采集的灵活度。
上述的数据采集方法,通过设置过滤请求以及IP和端口,以此形成中间代理应用程序,通过中间代理应用程序根据业务请求对目标网站发起请求,并依据过滤请求获取对应的内容,并进行请求头或者页面内容的过滤,以实现滤出请求URL和cookies的信息头后再进行模拟http请求来快速获取数据;或者滤出目标页面,再通过解析页面来快速获取数据,实现高效采集数据,节省分析网站的时间成本,也可以节省设备资源。
图5是本发明实施例提供的一种数据采集装置300的示意性框图。如图5所示,对应于以上数据采集方法,本发明还提供一种数据采集装置300。该数据采集装置300包括用于执行上述数据采集方法的单元,该装置可以被配置于服务器中。具体地,请参阅图5,该数据采集装置300包括设置单元301、请求获取单元302、判断单元303、第一请求单元304、采集单元305、反馈单元306、第二请求单元307以及数据过滤单元308。
设置单元301,用于设置过滤规则并设置代理应用程序的IP和端口,以得到中间代理应用程序;请求获取单元302,用于获取业务请求;判断单元303,用于判断所述过滤规则是否是过滤代理请求的请求头信息;第一请求单元304,用于若所述过滤规则是过滤代理请求的请求头信息,则根据所述业务请求通过所述中间代理应用程序请求对应的目标网站,以得到指定链接的数据包;采集单元305,用于通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据;反馈单元306,用于将目标数据反馈至终端,以使得终端显示所述目标数据;第二请求单元307,用于若所述过滤规则不是过滤代理请求的请求头信息,则根据所述业务需求通过所述中间代理应用程序采集对应的目标网站的相关数据,以得到响应数据;数据过滤单元308,用于根据所述过滤规则进行响应数据的过滤,以得到目标数据,并执行所述将目标数据反馈至终端,以使得终端显示所述目标数据。
在一实施例中,如图6所示,所述采集单元305包括第一分析子单元3051、存储子单元3052以及写入子单元3053。
第一分析子单元3051,用于对所述指定链接的数据包进行分析,以得到数据以及代理请求,并获取代理请求的请求头信息;存储子单元3052,用于将所述数据存储至数据库内;写入子单元3053,用于将所述代理请求的请求头信息写至http请求对应的请求头参数中,以进行http请求的数据采集,以得到目标数据。。
在一实施例中,如图7所示,所述数据过滤单元308包括第二分析子单元3081、数据包过滤子单元3082、筛选子单元3083以及解析子单元3084。
第二分析子单元3081,用于对所述响应数据进行分析,以得到目标URL;数据包过滤子单元3082,用于过滤所述目标URL对应的数据包,以得到候选数据包;筛选子单元3083,用于根据所述业务请求对候选数据包进行筛选,以得到目标页面内容;解析子单元3084,用于采用页面解析方法对所述目标页面内容进行解析,以得到目标数据。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述数据采集装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述数据采集装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图8所示的计算机设备上运行。
请参阅图8,图8是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是服务器,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图8,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种数据采集方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种数据采集方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
设置过滤规则并设置代理应用程序的IP和端口,以得到中间代理应用程序;获取业务请求;判断所述过滤规则是否是过滤代理请求的请求头信息;若所述过滤规则是过滤代理请求的请求头信息,则根据所述业务请求通过所述中间代理应用程序请求对应的目标网站,以得到指定链接的数据包;通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据;将目标数据反馈至终端,以使得终端显示所述目标数据;若所述过滤规则不是过滤代理请求的请求头信息,则根据所述业务需求通过所述中间代理应用程序采集对应的目标网站的相关数据,以得到响应数据;根据所述过滤规则进行响应数据的过滤,以得到目标数据,并执行所述将目标数据反馈至终端,以使得终端显示所述目标数据。
其中,所述过滤规则包括过滤代理请求的请求头信息以及过滤页面内容。
所述代理请求的请求头信息包括URL信息以及cookies信息。
在一实施例中,处理器502在实现所述通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据步骤时,具体实现如下步骤:
对所述指定链接的数据包进行分析,以得到数据以及代理请求,并获取代理请求的请求头信息;将所述数据存储至数据库内;将所述代理请求的请求头信息写至http请求对应的请求头参数中,以进行http请求的数据采集,以得到目标数据。
在一实施例中,处理器502在实现所述根据所述过滤规则进行响应数据的过滤,以得到目标数据步骤时,具体实现如下步骤:
对所述响应数据进行分析,以得到目标URL;过滤所述目标URL对应的数据包,以得到候选数据包;根据所述业务请求对候选数据包进行筛选,以得到目标页面内容;采用页面解析方法对所述目标页面内容进行解析,以得到目标数据。
其中,所述候选数据包包括请求头以及对应的页面内容。
在一实施例中,处理器502在实现所述采用页面解析方法对所述目标页面内容进行解析,以得到目标数据步骤时,具体实现如下步骤:
采用使用正则匹配方法、xpath解析方法、BeautifulSoup解析方法中至少一种方法对所述目标页面内容进行解析,以得到目标数据。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
设置过滤规则并设置代理应用程序的IP和端口,以得到中间代理应用程序;获取业务请求;判断所述过滤规则是否是过滤代理请求的请求头信息;若所述过滤规则是过滤代理请求的请求头信息,则根据所述业务请求通过所述中间代理应用程序请求对应的目标网站,以得到指定链接的数据包;通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据;将目标数据反馈至终端,以使得终端显示所述目标数据;若所述过滤规则不是过滤代理请求的请求头信息,则根据所述业务需求通过所述中间代理应用程序采集对应的目标网站的相关数据,以得到响应数据;根据所述过滤规则进行响应数据的过滤,以得到目标数据,并执行所述将目标数据反馈至终端,以使得终端显示所述目标数据。
其中,所述过滤规则包括过滤代理请求的请求头信息以及过滤页面内容。
所述代理请求的请求头信息包括URL信息以及cookies信息。
在一实施例中,所述处理器在执行所述计算机程序而实现所述通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据步骤时,具体实现如下步骤:
对所述指定链接的数据包进行分析,以得到数据以及代理请求,并获取代理请求的请求头信息;将所述数据存储至数据库内;将所述代理请求的请求头信息写至http请求对应的请求头参数中,以进行http请求的数据采集,以得到目标数据。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据所述过滤规则进行响应数据的过滤,以得到目标数据步骤时,具体实现如下步骤:
对所述响应数据进行分析,以得到目标URL;过滤所述目标URL对应的数据包,以得到候选数据包;根据所述业务请求对候选数据包进行筛选,以得到目标页面内容;采用页面解析方法对所述目标页面内容进行解析,以得到目标数据。
其中,所述候选数据包包括请求头以及对应的页面内容。
在一实施例中,所述处理器在执行所述计算机程序而实现所述采用页面解析方法对所述目标页面内容进行解析,以得到目标数据步骤时,具体实现如下步骤:
采用使用正则匹配方法、xpath解析方法、BeautifulSoup解析方法中至少一种方法对所述目标页面内容进行解析,以得到目标数据。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (9)
1.数据采集方法,其特征在于,包括:
设置过滤规则并设置代理应用程序的IP和端口,以得到中间代理应用程序;
获取业务请求;
判断所述过滤规则是否是过滤代理请求的请求头信息;
若所述过滤规则是过滤代理请求的请求头信息,则根据所述业务请求通过所述中间代理应用程序请求对应的目标网站,以得到指定链接的数据包;
通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据;
将目标数据反馈至终端,以使得终端显示所述目标数据;
若所述过滤规则不是过滤代理请求的请求头信息,则根据所述业务需求通过所述中间代理应用程序采集对应的目标网站的相关数据,以得到响应数据;
根据所述过滤规则进行响应数据的过滤,以得到目标数据,并执行所述将目标数据反馈至终端,以使得终端显示所述目标数据;
所述通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据,包括:
对所述指定链接的数据包进行分析,以得到数据以及代理请求,并获取代理请求的请求头信息;
将所述数据存储至数据库内;
将所述代理请求的请求头信息写至http请求对应的请求头参数中,以进行http请求的数据采集,以得到目标数据。
2.根据权利要求1所述的数据采集方法,其特征在于,所述过滤规则包括过滤代理请求的请求头信息以及过滤页面内容。
3.根据权利要求1所述的数据采集方法,其特征在于,所述代理请求的请求头信息包括URL信息以及cookies信息。
4.根据权利要求1所述的数据采集方法,其特征在于,所述根据所述过滤规则进行响应数据的过滤,以得到目标数据,包括:
对所述响应数据进行分析,以得到目标URL;
过滤所述目标URL对应的数据包,以得到候选数据包;
根据所述业务请求对候选数据包进行筛选,以得到目标页面内容;
采用页面解析方法对所述目标页面内容进行解析,以得到目标数据。
5.根据权利要求4所述的数据采集方法,其特征在于,所述候选数据包包括请求头以及对应的页面内容。
6.根据权利要求4所述的数据采集方法,其特征在于,所述采用页面解析方法对所述目标页面内容进行解析,以得到目标数据,包括:
采用使用正则匹配方法、xpath解析方法、BeautifulSoup解析方法中至少一种方法对所述目标页面内容进行解析,以得到目标数据。
7.数据采集装置,其特征在于,包括:
设置单元,用于设置过滤规则并设置代理应用程序的IP和端口,以得到中间代理应用程序;
请求获取单元,用于获取业务请求;
判断单元,用于判断所述过滤规则是否是过滤代理请求的请求头信息;
第一请求单元,用于若所述过滤规则是过滤代理请求的请求头信息,则根据所述业务请求通过所述中间代理应用程序请求对应的目标网站,以得到指定链接的数据包;
采集单元,用于通过指定链接的数据包过滤请求头信息,并进行数据采集,以得到目标数据;
反馈单元,用于将目标数据反馈至终端,以使得终端显示所述目标数据;
第二请求单元,用于若所述过滤规则不是过滤代理请求的请求头信息,则根据所述业务需求通过所述中间代理应用程序采集对应的目标网站的相关数据,以得到响应数据;
数据过滤单元,用于根据所述过滤规则进行响应数据的过滤,以得到目标数据,并执行所述将目标数据反馈至终端,以使得终端显示所述目标数据;
所述采集单元包括第一分析子单元、存储子单元以及写入子单元;
第一分析子单元,用于对所述指定链接的数据包进行分析,以得到数据以及代理请求,并获取代理请求的请求头信息;存储子单元,用于将所述数据存储至数据库内;写入子单元,用于将所述代理请求的请求头信息写至http请求对应的请求头参数中,以进行http请求的数据采集,以得到目标数据。
8.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的方法。
9.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010173517.6A CN111405033B (zh) | 2020-03-13 | 2020-03-13 | 数据采集方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010173517.6A CN111405033B (zh) | 2020-03-13 | 2020-03-13 | 数据采集方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111405033A CN111405033A (zh) | 2020-07-10 |
CN111405033B true CN111405033B (zh) | 2023-02-10 |
Family
ID=71413331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010173517.6A Active CN111405033B (zh) | 2020-03-13 | 2020-03-13 | 数据采集方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111405033B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112307372B (zh) * | 2020-10-29 | 2024-07-16 | 北京沃东天骏信息技术有限公司 | 数据处理方法和装置 |
CN113676547B (zh) * | 2021-09-01 | 2023-04-07 | 北京字跳网络技术有限公司 | 数据处理方法、装置、存储介质和电子设备 |
CN116910393B (zh) * | 2023-09-13 | 2023-12-12 | 戎行技术有限公司 | 一种基于递归神经网络的大批量新闻数据采集方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101655868A (zh) * | 2009-09-03 | 2010-02-24 | 中国人民解放军信息工程大学 | 网络数据挖掘方法、网络数据推送方法及设备 |
EP3068097A1 (en) * | 2015-03-11 | 2016-09-14 | Xiaomi Inc. | Method and device for filtering information |
CN109829096A (zh) * | 2019-03-15 | 2019-05-31 | 北京金山数字娱乐科技有限公司 | 一种数据采集方法、装置、电子设备及存储介质 |
CN110457565A (zh) * | 2019-08-08 | 2019-11-15 | 上海富数科技有限公司 | 基于浏览器集群技术的数据采集系统及其控制方法 |
CN110677423A (zh) * | 2019-09-30 | 2020-01-10 | 深圳前海环融联易信息科技服务有限公司 | 基于客户代理端的数据采集方法、装置、及计算机设备 |
CN110688598A (zh) * | 2019-08-22 | 2020-01-14 | 苏宁云计算有限公司 | 业务参数采集方法、装置、计算机设备和存储介质 |
CN110825944A (zh) * | 2019-10-29 | 2020-02-21 | 深圳前海环融联易信息科技服务有限公司 | 网页表格数据采集方法、装置、计算机设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105468664A (zh) * | 2015-05-12 | 2016-04-06 | 北京众标网络科技有限公司 | 一种信息采集方法及装置 |
-
2020
- 2020-03-13 CN CN202010173517.6A patent/CN111405033B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101655868A (zh) * | 2009-09-03 | 2010-02-24 | 中国人民解放军信息工程大学 | 网络数据挖掘方法、网络数据推送方法及设备 |
EP3068097A1 (en) * | 2015-03-11 | 2016-09-14 | Xiaomi Inc. | Method and device for filtering information |
CN109829096A (zh) * | 2019-03-15 | 2019-05-31 | 北京金山数字娱乐科技有限公司 | 一种数据采集方法、装置、电子设备及存储介质 |
CN110457565A (zh) * | 2019-08-08 | 2019-11-15 | 上海富数科技有限公司 | 基于浏览器集群技术的数据采集系统及其控制方法 |
CN110688598A (zh) * | 2019-08-22 | 2020-01-14 | 苏宁云计算有限公司 | 业务参数采集方法、装置、计算机设备和存储介质 |
CN110677423A (zh) * | 2019-09-30 | 2020-01-10 | 深圳前海环融联易信息科技服务有限公司 | 基于客户代理端的数据采集方法、装置、及计算机设备 |
CN110825944A (zh) * | 2019-10-29 | 2020-02-21 | 深圳前海环融联易信息科技服务有限公司 | 网页表格数据采集方法、装置、计算机设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
自定规则的AJAX网页信息采集功能的设计;胡越等;《物联网技术》;20160920(第09期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111405033A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111405033B (zh) | 数据采集方法、装置、计算机设备及存储介质 | |
US9792365B2 (en) | Method and system for tracking and gathering multivariate testing data | |
US6892231B2 (en) | Method and apparatus for verifying the contents of a global configuration file | |
US8335838B2 (en) | Web page load time prediction and simulation | |
US9229994B2 (en) | Server-side tracing of requests | |
CN101222349B (zh) | 收集web用户行为及性能数据的方法及系统 | |
CN102279884B (zh) | 基于Web页面进行数据采集和展现的方法、系统及Web服务器 | |
CN109491744A (zh) | 一种网页截图系统和方法 | |
CN110020062B (zh) | 一种可定制的网络爬虫方法及系统 | |
US10452730B2 (en) | Methods for analyzing web sites using web services and devices thereof | |
CN105024872A (zh) | 网络性能测试的方法及装置 | |
CN107133161B (zh) | 一种生成客户端性能测试脚本方法及装置 | |
CN110224896B (zh) | 一种网络性能数据采集方法、装置及存储介质 | |
US20080028284A1 (en) | System and method for web-based interactive gathering hyperlinks and email addresses | |
CN110263070A (zh) | 事件上报方法及装置 | |
CN110737645B (zh) | 一种不同系统间数据迁移方法、数据迁移系统及相关设备 | |
WO2020155765A1 (zh) | 移动终端爬取数据的方法、装置、移动终端和存储介质 | |
CN105550179A (zh) | 一种网页收藏方法和浏览器插件 | |
US9892202B2 (en) | Web page load time reduction by optimized authentication | |
Rey et al. | Towards a Performance Optimization of Mobile Automated Fingerprint Identification System (MAFIS) for the Philippine National Police | |
CN111953766A (zh) | 一种网络数据采集的方法及其系统 | |
CN109862074B (zh) | 一种数据采集方法、装置、可读介质及电子设备 | |
US20220230113A1 (en) | Digital chat conversation and virtual agent analytics | |
CN103399968A (zh) | 一种微博信息采集方法及系统 | |
CN102968347A (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 |