绿色专利的筛选通常使用 WIPO 提供的绿色专利分类范围清单:https://www.wipo.int/classifications/ipc/green-inventory/home ,今天就让我们一起学习下如何使用 R 语言爬取这个网页上的数据,然后整理成我们需要的形式。后续课程我还会讲解如何根据这个爬取结果来筛选绿色专利。
![]()
通过网页分析,我们可以发现这个列表的数据就在这里:https://www.wipo.int/classifications/ipc/green-inventory/main.ea782575202e01049dd6.js 通过简单的手动处理,我们就可以把里面的 json 数据提取处理了:
library(jsonlite) |
实际上从另外一个链接也可以下载到这个 json 数据:https://www.wipo.int/export/sites/www/classifications/ipc/en/green_inventory/assets/green_inventory.js 所以我们还是直接处理这个:
# https://www.wipo.int/classifications/ipc/en/green_inventory/index.html |
这样得到的 7 个 title 就是上面网页截图上的 7 个类别,我们简单处理下:
ipc %>% |
然后我们再看第二级:
ipc %>% |
第三级:
ipc %>% |
第四级:
ipc %>% |
第五级:
ipc %>% |
合并所有的结果:
bind_rows( |
里面的不少 IPC 使用 . 分隔范围,可以使用 tidytext 包的 unnest_tokens() 函数展开这些:
library(tidytext) |
根据 IPC 变量,我们把数据分为下面几类:
第一类:只有大类的
ipcdf %>% |
第二类:只有大类小类的
ipcdf %>% |
第三类:没有范围的
ipcdf %>% |
第四类:有范围的
ipcdf %>% |
对于这里用 - 连接的范围,我们需要手动找到这些范围包含的所有分类号补齐,补齐之后得到的数据是这样的:
readxl::read_xlsx("ipcdf4.xlsx") %>% |
最后我们再把这些 ipcdf* 保存下来:
ipcdf1 %>% |
下次课我们再讲解如何使用这些数据从专利数据中筛选绿色专利数据。
点击这里跳转到 RStata 短书平台获取附件:使用 R 语言爬取处理 WIPO 绿色专利分类数据
评论