CN105069135B - Ota网站的数据爬取方法及系统 - Google Patents
Ota网站的数据爬取方法及系统 Download PDFInfo
- Publication number
- CN105069135B CN105069135B CN201510507081.9A CN201510507081A CN105069135B CN 105069135 B CN105069135 B CN 105069135B CN 201510507081 A CN201510507081 A CN 201510507081A CN 105069135 B CN105069135 B CN 105069135B
- Authority
- CN
- China
- Prior art keywords
- crawler
- hotel
- list
- data
- task
- 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
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/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- 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/954—Navigation, e.g. using categorised browsing
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)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种OTA网站的数据爬取方法及系统。该数据爬取方法包括以下步骤:生成地区列表爬虫任务,包含对应于酒店搜索主页面的一初始爬取URL;执行地区列表爬虫任务以采集并保存地区数据,并生成酒店列表爬虫任务;执行酒店列表爬虫任务以采集并保存酒店数据,并生成价格列表爬虫任务;执行该价格列表爬虫任务,以采集并保存酒店的价格数据。本发明的OTA网站的数据爬取方法及系统,能够针对OTA网站的数据爬取有效提高数据采集的效率、完整性以及准确性,并降低资源开销。
Description
技术领域
本发明涉及网站数据爬取,尤其是涉及OTA网站的数据爬取方法及系统。
背景技术
目前,网络数据采集的主要技术就是利用网络爬虫爬取网页的数据。
以数据采集策略来区分,现有的网络爬虫主要分为两大类:一类是通用爬虫,主要用于为搜索引擎采集网络数据,此类爬虫一般根据所提供的一个或多个种子URL进行网页抓取,再在所抓取的网页中获取下一批新的URL,呈树状结构展开;另一类是垂直爬虫,主要用于定向的数据采集,此类爬虫一般根据事先定义的规则生成一批URL,爬虫对URL逐一进行抓取。
然而,现有的爬虫在面对一些较为特殊的、有一定的自身特点的爬取对象时,就显得有些不足,现有的OTA网站(在线旅行商网站)就是一个明显的例子。
由于OTA网站中酒店相关的数据所涉及的数据具有维度多、信息类型丰富、数据量大的特点,现有的网络爬虫无法高效、完整、准确地采集相应信息。具体来说,通用的爬虫无法涵盖酒店数据的多个维度,且由于其抓取方式存在大量的无效信息的抓取从而导致效率低下。垂直爬虫由于其任务的单一性导致其所抓取的数据完整性不高,同时单一的垂直爬虫也无法覆盖多个维度的数据。尽管,也有一些将分布式爬虫用于OTA网站的数据爬取的尝试,但现有的任务调度策略较为简单,主要是通用爬虫的树状结构任务生成,或是垂直爬虫的单个批次任务生成,这些都仍然无法满足酒店数据采集的特殊性。
发明内容
本发明要解决的技术问题是为了克服现有的数据爬取方式难以应对OTA网站的数据爬取中数据维度多、信息类型丰富、数据量大的特点的缺陷,提供一种OTA网站的数据爬取方法及系统。
本发明是通过下述技术方案来解决上述技术问题的:
一种OTA网站的数据爬取方法,其特点在于,包括以下步骤:
S1、生成一地区列表爬虫任务,包含一初始爬取URL,该初始爬取URL对应于OTA网站的酒店搜索主页面;
S2、执行该地区列表爬虫任务,以采集并保存地区数据,地区数据包括地区列表、地区ID,并根据执行中爬取得到的地区列表及地区ID生成酒店列表爬虫任务,该酒店列表爬虫任务设有预设的多组日期参数,每组日期参数分别包含一入店日期和一离店日期,其中地区包括区域、省份、城市、区县和/或商圈;
S3、执行酒店列表爬虫任务,以采集并保存酒店数据,其中酒店数据包括在该多组日期参数的条件下可预订的酒店的房间以及酒店的基本信息,并根据执行中爬取得到的酒店的基本信息生成价格列表爬虫任务,其中酒店的基本信息包括酒店的名称和酒店ID;
S4、执行该价格列表爬虫任务,以采集并保存酒店的价格数据。
本发明可将地区列表爬虫、酒店列表爬虫、价格列表爬虫作为相互独立的爬虫模块进行工作。并且,根据目标OTA网站的静态及动态数据更新频次的不同,各爬虫模块可以相互独立地以不同频次生成任务进行数据的采集。
较佳地,步骤S2中每生成一个酒店列表爬虫任务就将其放入一第一任务队列,步骤S3从该第一任务队列中提取酒店列表爬虫任务并执行,并将生成的价格列表爬虫任务放入一第二任务队列,步骤S4从该第二任务队列中提取价格列表爬虫任务并执行。
由此,使得步骤S2至S4中的不同层级的链式数据爬取工作,却得以相对独立地进行处理或运算,进而得以更便于利用分布式处理的方式显著提高数据爬取的效率。
在实际实施过程中,由于OTA网站的城市列表信息一般变更频次最低,可以每周一次或每月一次的频率采集更新;酒店列表信息变更频次也相对不高,可以按照每周1~2次的频率进行采集;而酒店详情及价格信息变更频率较高,可以按照不同酒店的更新频率,以每天1次甚至多次的频率进行采集。应当理解地是,不同的爬虫模块采集数据的频次不同,并不会影响本发明的数据爬取方法的链式数据爬取工作,并且合理利用了其相互独立的特性。同时,在链式生成任务的过程中,也同样可以考虑频次的因素,例如可以根据一次采集的酒店列表信息生成多个(不同入离店日期的)酒店的价格列表爬虫任务。这样的方式能够最大程度避免重复采集相同信息,从而有效提高采集效率。
较佳地,步骤S3中采集的酒店的基本信息还包括酒店的地址,步骤S4中采集的价格数据包括酒店的房型、各房型的价格、余房量。
较佳地,步骤S2中采用静态数据的爬虫执行爬虫任务,步骤S4中采用动态数据的爬虫执行爬虫任务。这样的设置方式,适应于绝大多数OTA网站的设计特点,能够以更低的开销完成整个数据采集过程。
较佳地,在步骤S2至步骤S4中执行爬虫任务以采集数据的过程中,屏蔽预设的一类数据的爬取请求,该类数据包括图像类资源和/或CSS(层叠样式表)资源。
通过对这类无用数据的屏蔽,能够降低数据爬取过程中的资源开销,提升效率。
本发明还提供了一种OTA网站的数据爬取系统,其特点在于,包括:
初始模块,用于生成一地区列表爬虫任务,包含一初始爬取URL,该初始爬取URL对应于OTA网站的酒店搜索主页面;
地区列表爬虫模块,用于执行该地区列表爬虫任务,以采集并保存地区数据,地区数据包括地区列表、地区ID,并根据执行中爬取得到的地区列表及地区ID生成酒店列表爬虫任务,该酒店列表爬虫任务设有预设的多组日期参数,每组日期参数分别包含一入店日期和一离店日期,其中地区包括区域、省份、城市、区县和/或商圈;
酒店列表爬虫模块,用于执行酒店列表爬虫任务,以采集并保存酒店数据,其中酒店数据包括在该多组日期参数的条件下可预订的酒店的房间以及酒店的基本信息,并根据执行中爬取得到的酒店的基本信息生成价格列表爬虫任务,其中酒店的基本信息包括酒店的名称和酒店ID;
价格列表爬虫模块,用于执行该价格列表爬虫任务,以采集并保存酒店的价格数据。
较佳地,该数据爬取系统还包括一任务队列模块,用于以任务队列的形式存储爬虫任务,该地区列表爬虫模块每生成一个酒店列表爬虫任务就将其放入该任务队列模块中的一第一任务队列,该酒店列表爬虫模块用于从该第一任务队列中提取酒店列表爬虫任务并执行,并将生成的价格列表爬虫任务放入该任务队列模块中的一第二任务队列,该价格列表爬虫模块用于从该第二任务队列中提取价格列表爬虫任务并执行。
较佳地,该酒店列表爬虫模块采集的酒店的基本信息还包括酒店的地址,该价格列表爬虫模块采集的价格数据包括酒店的房型、各房型的价格、余房量。
较佳地,该地区列表爬虫模块采用静态数据的爬虫执行爬虫任务,该价格列表爬虫模块中采用动态数据的爬虫执行爬虫任务。
较佳地,该地区列表爬虫模块、该酒店列表爬虫模块、该价格列表爬虫模块在执行爬虫任务以采集数据的过程中,屏蔽预设的一类数据的爬取请求,该类数据包括图像类资源和/或CSS资源。
在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本发明各较佳实例。
本发明的积极进步效果在于:本发明的OTA网站的数据爬取方法及系统,能够针对OTA网站的数据爬取有效提高数据采集的效率、完整性以及准确性,并降低资源开销。
附图说明
图1为本发明实施例1的OTA网站的数据爬取方法的流程图。
图2为本发明实施例2的OTA网站的数据爬取系统的示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
参考图1所示,本实施例的OTA网站的数据爬取方法,包括有以下步骤:
S1、生成一地区列表爬虫任务,包含一初始爬取URL,该初始爬取URL对应于OTA网站的酒店搜索主页面;
S2、执行该地区列表爬虫任务,以采集并保存地区数据,地区数据包括地区列表、地区ID,并根据执行中爬取得到的地区列表及地区ID生成酒店列表爬虫任务,该酒店列表爬虫任务设有预设的多组日期参数,每组日期参数分别包含一入店日期和一离店日期,其中地区包括省份、城市、区县;
S3、执行酒店列表爬虫任务,以采集并保存酒店数据,其中酒店数据包括在该多组日期参数的条件下可预订的酒店的房间以及酒店的基本信息,并根据执行中爬取得到的酒店的基本信息生成价格列表爬虫任务,其中酒店的基本信息包括酒店的名称和酒店ID;
S4、执行该价格列表爬虫任务,以采集并保存酒店的价格数据。
其中,步骤S2中每生成一个酒店列表爬虫任务就将其放入一第一任务队列,步骤S3从该第一任务队列中提取酒店列表爬虫任务并执行,并将生成的价格列表爬虫任务放入一第二任务队列,步骤S4从该第二任务队列中提取价格列表爬虫任务并执行。
由此,使得步骤S2至S4中的不同层级的链式数据爬取工作,却得以相对独立地进行处理或运算,进而得以更便于利用分布式处理的方式显著提高数据爬取的效率。
步骤S3中采集的酒店的基本信息还包括酒店的地址,步骤S4中采集的价格数据包括酒店的房型、各房型的价格、余房量。步骤S2中采用静态数据的爬虫执行爬虫任务,步骤S4中采用动态数据的爬虫执行爬虫任务。
本实施例的数据爬取方法,在步骤S2至步骤S4中执行爬虫任务以采集数据的过程中,屏蔽预设的一类数据的爬取请求,该类数据包括图像类资源和CSS资源。通过对这类无用数据的屏蔽,能够降低数据爬取过程中的资源开销,提升效率。
实施例2
参考图2所示,本实施例的OTA网站的数据爬取系统包括:初始模块1、地区列表爬虫模块2、酒店列表爬虫模块3、价格列表爬虫模块4和任务队列模块5。
初始模块,用于生成一地区列表爬虫任务,包含一初始爬取URL,该初始爬取URL对应于OTA网站的酒店搜索主页面。
地区列表爬虫模块,用于执行该地区列表爬虫任务,以采集并保存地区数据,地区数据包括地区列表、地区ID,并根据执行中爬取得到的地区列表及地区ID生成酒店列表爬虫任务,该酒店列表爬虫任务设有预设的多组日期参数,每组日期参数分别包含一入店日期和一离店日期,其中地区包括省份、城市、区县、商圈。
酒店列表爬虫模块,用于执行酒店列表爬虫任务,以采集并保存酒店数据,其中酒店数据包括在该多组日期参数的条件下可预订的酒店的房间以及酒店的基本信息,并根据执行中爬取得到的酒店的基本信息生成价格列表爬虫任务,其中酒店的基本信息包括酒店的名称和酒店ID。
价格列表爬虫模块,用于执行该价格列表爬虫任务,以采集并保存酒店的价格数据。
任务队列模块,用于以任务队列的形式存储爬虫任务,该地区列表爬虫模块每生成一个酒店列表爬虫任务就将其放入该任务队列模块中的一第一任务队列,该酒店列表爬虫模块从该第一任务队列中提取酒店列表爬虫任务并执行,并将生成的价格列表爬虫任务放入该任务队列模块中的一第二任务队列,该价格列表爬虫模块从该第二任务队列中提取价格列表爬虫任务并执行。
其中,该酒店列表爬虫模块采集的酒店的基本信息还包括酒店的地址,该价格列表爬虫模块采集的价格数据包括酒店的房型、各房型的价格、余房量。
该地区列表爬虫模块采用静态数据的爬虫执行爬虫任务,该价格列表爬虫模块中采用动态数据的爬虫执行爬虫任务。并且,该地区列表爬虫模块、该酒店列表爬虫模块、该价格列表爬虫模块在执行爬虫任务以采集数据的过程中,屏蔽预设的一类数据的爬取请求,该类数据包括图像类资源和CSS资源。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这些仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (8)
1.一种OTA网站的数据爬取方法,其特征在于,包括以下步骤:
S1、生成一地区列表爬虫任务,包含一初始爬取URL,该初始爬取URL对应于OTA网站的酒店搜索主页面;
S2、执行该地区列表爬虫任务,以采集并保存地区数据,地区数据包括地区列表、地区ID,并根据执行中爬取得到的地区列表及地区ID生成酒店列表爬虫任务,该酒店列表爬虫任务设有预设的多组日期参数,每组日期参数分别包含一入店日期和一离店日期,其中地区包括区域、省份、城市、区县和/或商圈;
S3、执行酒店列表爬虫任务,以采集并保存酒店数据,其中酒店数据包括在该多组日期参数的条件下可预订的酒店的房间以及酒店的基本信息,并根据执行中爬取得到的酒店的基本信息生成价格列表爬虫任务,其中酒店的基本信息包括酒店的名称和酒店ID;
S4、执行该价格列表爬虫任务,以采集并保存酒店的价格数据;
步骤S2中每生成一个酒店列表爬虫任务就将其放入一第一任务队列,步骤S3从该第一任务队列中提取酒店列表爬虫任务并执行,并将生成的价格列表爬虫任务放入一第二任务队列,步骤S4从该第二任务队列中提取价格列表爬虫任务并执行;
地区列表爬虫、酒店列表爬虫、价格列表爬虫作为相互独立的爬虫模块进行工作,并且,根据目标OTA网站的静态及动态数据更新频次的不同,各爬虫模块相互独立地以不同频次生成任务进行数据的采集。
2.如权利要求1所述的数据爬取方法,其特征在于,步骤S3中采集的酒店的基本信息还包括酒店的地址,步骤S4中采集的价格数据包括酒店的房型、各房型的价格、余房量。
3.如权利要求1所述的数据爬取方法,其特征在于,步骤S2中采用静态数据的爬虫执行爬虫任务,步骤S4中采用动态数据的爬虫执行爬虫任务。
4.如权利要求1-3中任意一项所述的数据爬取方法,其特征在于,在步骤S2至步骤S4中执行爬虫任务以采集数据的过程中,屏蔽预设的一类数据的爬取请求,该类数据包括图像类资源和/或CSS资源。
5.一种OTA网站的数据爬取系统,其特征在于,包括:
初始模块,用于生成一地区列表爬虫任务,包含一初始爬取URL,该初始爬取URL对应于OTA网站的酒店搜索主页面;
地区列表爬虫模块,用于执行该地区列表爬虫任务,以采集并保存地区数据,地区数据包括地区列表、地区ID,并根据执行中爬取得到的地区列表及地区ID生成酒店列表爬虫任务,该酒店列表爬虫任务设有预设的多组日期参数,每组日期参数分别包含一入店日期和一离店日期,其中地区包括区域、省份、城市、区县和/或商圈;
酒店列表爬虫模块,用于执行酒店列表爬虫任务,以采集并保存酒店数据,其中酒店数据包括在该多组日期参数的条件下可预订的酒店的房间以及酒店的基本信息,并根据执行中爬取得到的酒店的基本信息生成价格列表爬虫任务,其中酒店的基本信息包括酒店的名称和酒店ID;
价格列表爬虫模块,用于执行该价格列表爬虫任务,以采集并保存酒店的价格数据;
该数据爬取系统还包括一任务队列模块,用于以任务队列的形式存储爬虫任务,该地区列表爬虫模块每生成一个酒店列表爬虫任务就将其放入该任务队列模块中的一第一任务队列,该酒店列表爬虫模块用于从该第一任务队列中提取酒店列表爬虫任务并执行,并将生成的价格列表爬虫任务放入该任务队列模块中的一第二任务队列,该价格列表爬虫模块用于从该第二任务队列中提取价格列表爬虫任务并执行;
地区列表爬虫、酒店列表爬虫、价格列表爬虫作为相互独立的爬虫模块进行工作,并且,根据目标OTA网站的静态及动态数据更新频次的不同,各爬虫模块相互独立地以不同频次生成任务进行数据的采集。
6.如权利要求5所述的数据爬取系统,其特征在于,该酒店列表爬虫模块采集的酒店的基本信息还包括酒店的地址,该价格列表爬虫模块采集的价格数据包括酒店的房型、各房型的价格、余房量。
7.如权利要求5所述的数据爬取系统,其特征在于,该地区列表爬虫模块采用静态数据的爬虫执行爬虫任务,该价格列表爬虫模块中采用动态数据的爬虫执行爬虫任务。
8.如权利要求5-7中任意一项所述的数据爬取系统,其特征在于,该地区列表爬虫模块、该酒店列表爬虫模块、该价格列表爬虫模块在执行爬虫任务以采集数据的过程中,屏蔽预设的一类数据的爬取请求,该类数据包括图像类资源和/或CSS资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510507081.9A CN105069135B (zh) | 2015-08-18 | 2015-08-18 | Ota网站的数据爬取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510507081.9A CN105069135B (zh) | 2015-08-18 | 2015-08-18 | Ota网站的数据爬取方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105069135A CN105069135A (zh) | 2015-11-18 |
CN105069135B true CN105069135B (zh) | 2019-05-17 |
Family
ID=54498504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510507081.9A Active CN105069135B (zh) | 2015-08-18 | 2015-08-18 | Ota网站的数据爬取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105069135B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108549652B (zh) * | 2018-03-08 | 2021-10-29 | 北京三快在线科技有限公司 | 酒店动态数据获取方法、装置、电子设备及可读存储介质 |
CN110020226B (zh) * | 2018-08-20 | 2023-07-21 | 中国平安人寿保险股份有限公司 | 基于大数据的数据展示方法、用户设备、存储介质及装置 |
CN113965371B (zh) * | 2021-10-19 | 2023-08-29 | 北京天融信网络安全技术有限公司 | 网站监测过程中的任务处理方法、装置、终端及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103984984A (zh) * | 2014-06-11 | 2014-08-13 | 张劲松 | 一种酒店订房系统及其实现方法 |
CN104346328A (zh) * | 2013-07-23 | 2015-02-11 | 同程网络科技股份有限公司 | 基于网页数据抓取的垂直智能爬虫数据收集方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105210103B (zh) * | 2013-02-13 | 2020-02-18 | Op40后丁斯公司 | 分布式云服务及其使用 |
-
2015
- 2015-08-18 CN CN201510507081.9A patent/CN105069135B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104346328A (zh) * | 2013-07-23 | 2015-02-11 | 同程网络科技股份有限公司 | 基于网页数据抓取的垂直智能爬虫数据收集方法 |
CN103984984A (zh) * | 2014-06-11 | 2014-08-13 | 张劲松 | 一种酒店订房系统及其实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105069135A (zh) | 2015-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103546326B (zh) | 一种网站流量统计的方法 | |
CN104123363B (zh) | 网页主图提取方法及装置 | |
CN107145496A (zh) | 基于关键词将图像与内容项目匹配的方法 | |
CN107274136A (zh) | 一种产品溯源信息保护方法 | |
CN105069135B (zh) | Ota网站的数据爬取方法及系统 | |
CN107885777A (zh) | 一种基于协作式爬虫的抓取网页数据的控制方法及系统 | |
CN104112207A (zh) | 一种基于互联网数据的电子商务交易监测方法 | |
CN104077402A (zh) | 数据处理方法和数据处理系统 | |
CN108052632A (zh) | 一种网络信息获取方法、系统及企业信息搜索系统 | |
CN109063144A (zh) | 可视化网络爬虫方法及装置 | |
CN104331335B (zh) | 门户网站的死链检查方法和装置 | |
CN102902790B (zh) | 网页分类系统及方法 | |
CN102446214A (zh) | 工程勘察内业数据处理方法及装置 | |
CN104965904B (zh) | 一种多平台数据的抓取方法和装置 | |
CN107247789A (zh) | 基于互联网的用户兴趣采集方法 | |
CN109766488A (zh) | 一种基于Scrapy的数据采集方法 | |
CN106682044A (zh) | 数据处理的方法及装置 | |
Dit et al. | Supporting and accelerating reproducible research in software maintenance using tracelab component library | |
CN106168977B (zh) | 一种用于网站安全监测的栏目识别方法 | |
CN106484746A (zh) | 网站转化事件的分析方法及装置 | |
US20230205750A1 (en) | Multi-database subsetting | |
CN107291727A (zh) | 一种爬虫的爬取方法及装置 | |
CN103246697B (zh) | 一种用于确定近义序列簇的方法与设备 | |
CN104462613B (zh) | 热点聚合方法及装置 | |
Wang et al. | Anti-crawler strategy and distributed crawler based on hadoop |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |