在NLTK中使用Python从Wiki DumpFile制作语料库

时间:2019-05-29 12:51:45

标签: python nltk wikipedia corpus

我正在尝试根据Wiki DumpFile创建一个语料库。

我已经下载了Wiki enwiki-latest-pages-articles.xml.bz2文件,但是当我运行代码(脚本)时,出现了一些错误。

对此我还比较陌生,但是我不明白应该如何放置python代码和wiki文件(相同的文件夹,哪个文件夹等)。

我已经运行了以下命令:make_wiki_corpus enwiki-latest-pages-articles.xml.bz2 wiki_en.txt

  • make_wiki_corpus-是我的python脚本
  • enwiki-latest-pages-articles.xml.bz2-是维基百科数据库
  • wiki_en.txt-我要写入的文本文件。
import sys
from gensim.corpora import WikiCorpus

def make_corpus(in_f, out_f):

    """Convert Wikipedia xml dump file to text corpus"""

    output = open(out_f, 'w')
    wiki = WikiCorpus(in_f)

    i = 0
    for text in wiki.get_texts():
        output.write(bytes(' '.join(text), 'utf-8').decode('utf-8') + '\n')
        i = i + 1
        if (i % 10000 == 0):
            print('Processed ' + str(i) + ' articles')
    output.close()
    print('Processing complete!')


if __name__ == '__main__':

    if len(sys.argv) != 3:
        print('Usage: python make_wiki_corpus.py <wikipedia_dump_file> <processed_text_file>')
        sys.exit(1)
    in_f = sys.argv[1]
    out_f = sys.argv[2]
    make_corpus(in_f, out_f)

我运行了包含此代码的命令,该命令与enwiki-latest-pages-articles.xml.bz2文件位于同一文件中,但是在命令提示符下,我收到一些错误消息,例如:

line 636 in \__init__  
line 92 in __init__  
FileNotFound Eroor : [Errorno21] No such file or directory "enwiki-latest-pages-articles.xml.bz2"

0 个答案:

没有答案