首先感谢 :

1.https://blog.csdn.net/qq_39023569/article/details/88556301

2.https://www.cnblogs.com/CherishFX/p/5280259.html

3.https://www.cs.bgu.ac.il/~elhadad/nlp12/jwpl/wikification.html

4.https://blog.csdn.net/Icy233333/article/details/80383336

 

一。中文维基数据准备。

  https://dumps.wikimedia.org/zhwiki/latest/

  选择:

  LANGCODE]wiki-[DATE]-pages-articles.xml.bz2
  [LANGCODE]wiki-[DATE]-pagelinks.sql.gz
  [LANGCODE]wiki-[DATE]-categorylinks.sql.gz

  注:维基服务器限流,并且时不时会中断。可以直接使用linux 的 wget -c   https://xxxxxxxxxxxxxxxxxxxx 方式实现可断点续接的下载。

  下载完后放在一个文件夹下。 我放在 F:\zhwiki2019\~  下。

二。下载JWPL DataMachine jar包解析数据文件

    直接去maven库中下载整个jar-with-dependencies.jar。下载地址:http://search.maven.org/#search|ga|1|tudarmstadt.ukp

  搜索de.tudarmstadt.ukp.wikipedia.datamachine对应的 jar-with-dependencies.jar 文件下载。

  下载后和数据放在同一目录下。

三。打开cmd,cd到zhwiki2019目录下,输入以下命令解析。

  java -cp jar-with-dependencies.jar de.tudarmstadt.ukp.wikipedia.datamachine.domain.JWPLDataMachine [LANGUAGE] [MAIN_CATEGORY_NAME] [DISAMBIGUATION_CATEGORY_NAME] [SOURCE_DIRECTORY]

  其中,

    LANGUAGE: 指jwpl支持的语言,选择一个你下载的wikipedia语言,比如english, chinese
    MAIN_CATEGORY_NAME: 填写一个Wikipedia类别层次上属于顶层的类别,比如:Contents
    DISAMBIGUATION_CATEGORY_NAME: 填写一个有消歧类别的类别名,比如:Disambiguation_pages
    SOURCE_DIRECTORY: 上面三个wikipedia文件的目录,比如: ~/En2019
  我的命令:

  java -Dfile.encoding=utf8  -cp de.tudarmstadt.ukp.wikipedia.datamachine-0.9.1-jar-with-dependencies.jar de.tudarmstadt.ukp.wikipedia.datamachine.domain.JWPLDataMachine chinese Contents Disambiguation_pages ~/zhwiki2019

  如果你的系统默认编码不是utf-8(比如windows), 可能需要再加一个参数:-Dfile.encoding=utf8;

  解析的时间看数据量的大小和你的cpu。之后会在output下生成11个txt.这11个txt就是之后要导入mysql的11个表。

  这些文件的解释:

 1 category --> 类别信息
 2      pageId:类别ID,唯一
 3      name:类别名
 4 
 5 category_inlinks --> 指向类别的链接信息
 6      id:类别ID,不唯一
 7      inLinks:该类别父类ID,也就是指向该类别的类别ID
 8 
 9 category_outlinks --> 类别指向的链接信息 
10      id:类别ID,不唯一
11      outLinks:该类别子类ID,也就是该类别指向的那些类别的ID
12 
13 category_pages --> 页面与类别的关系表
14      id:类别ID,不唯一
15      pages:属于该类别ID的页面ID
16 
17 metadata --> 该wikipedia的一些元信息,只有一条记录
18      language:语言
19      disambiguationCategory:运行DataMachine填写的消歧类别
20      mainCategory:运行DataMachine填写的顶层类别
21      nrofPages:页面个数
22      nrofRedirects:重定向个数
23      nrofDisambiguationPages:消歧页面个数
24      nrofCategories:类别个数
25      version
26 
27 page --> 页面信息
28      pageId:页面ID
29      name:名字
30      text:全文,包含wikimeida的标记信息
31      isDisambiguation:是否是消岐页面
32 
33 page_categories -->  页面与类别的关系表与category_pages信息重复
34 
35 page_inlinks --> 指向页面的页面信息
36      id:页面ID,不唯一
37      inLinks:指向该页面ID的页面ID
38 
39 page_outlinks
40      id:页面ID,不唯一
41      outlinks:该页面ID指向的页面ID
42 
43 page_redirects
44      id:页面ID,不唯一
45      redirects:重定向到该页面ID的所有页面ID
46 
47 pagemapline --> 所有页面的title信息,处理重定向等有用处
48      id:该页面ID
49      name:页面title名字
50      pageID:页面ID,如果该页面是重定向页面,该pageID是其指向的那个包含信息的页面ID
51      stem:***暂无信息
52      lemma:***暂无信息
View Code

相关文章:

  • 2022-12-23
  • 2021-07-26
  • 2021-07-06
  • 2021-10-21
  • 2021-05-27
  • 2022-01-04
  • 2021-10-21
猜你喜欢
  • 2021-05-04
  • 2022-01-07
  • 2022-01-15
  • 2022-01-23
  • 2022-01-10
  • 2021-10-29
  • 2022-12-23
相关资源
相似解决方案