我正在尝试构建一个Python搜索引擎,它将从TwitterAPI中提取被查询的推文。 我不能使用tweepy 。我已经构建了类TwitterWrapper,类Engine,并且还从我的查询术语“raptor”创建了(酸洗)语料库,没问题。我已经创建了InvertedIndex类,但似乎无法构造lemmatized单词的索引并将其作为pickle文件(.p)(我必须这样做)添加到我的Jupyter笔记本中以便使用我的TwittIR.py接口:
t = TwittIR.Engine(“raptor.p”, “index (to be named).p”)
results = t.query (“raptor”)
for result in results:
print(result)
所以,我的问题是,我如何创建索引(使用我的反向索引),并将其作为.p文件保存到我的Jupyter Notebook中?我当然是一个Python初学者。
def build_index(self, corpus):
index = {}
if self.lemmatizer == None:
self.lemmatizer = nltk.WordNetLemmatizer()
if self.stop_words is None:
self.stop_words = [self.wordtotoken(word) for word in
nltk.corpus.stopwords.words('english')]
for doc in corpus:
self.add_document(doc['text'], self.ndocs)
self.ndocs = self.ndocs + 1
def __getitem__(self,index):
return self.index[self.normalize_document(index)[0]]