# -*- coding: utf-8 -*- import sys import re from sklearn.feature_extraction.text import CountVectorizer import os def process_keywords(text): """ テキストからN-gramを生成してリストとして返す """ # 文字列を正規化して、カンマと改行を空白に変換 text = re.sub(r"[,\n]+", " ", text) # CountVectorizerを用いてN-gramを生成 vectorizer = CountVectorizer(ngram_range=(1, 3)) X = vectorizer.fit_transform([text]) features = vectorizer.get_feature_names_out() return features def save_keywords(keywords, filename="output1.txt"): """ キーワードをファイルに保存 """ with open(filename, 'w', encoding='utf-8') as file: for keyword in keywords: file.write(keyword + "\n") if __name__ == "__main__": if len(sys.argv) > 1: input_keywords = sys.argv[1] # コマンドラインからその他のキーワードを受け取る processed_keywords = process_keywords(input_keywords) # キーワードを処理 save_keywords(processed_keywords) # 処理したキーワードを保存 else: print("エラー: コマンドライン引数としてキーワードが提供されていません。")