GoogleAppEngineで形態素解析器Igoを使う
IgoというJavaで書かれた形態素解析器があるらしくさらにPython用のIgo-pythonというモノがあるみたいなのでGoogleAppEngineで利用してみる
導入としてはここのIgo-pythonの作者様のサイトを見て行ないましょう。
メモ: Igo-pythonの導入メモ
Flaskを使いたいのでここからファイルを落としてきて適当な場所に解凍します。
GitHub - gigq/flasktodo: Example of using Flask on App Engine to make a simple todo list.
このフォルダの中にIgo-pythonを解凍して作成されたフォルダと、解析用の辞書フォルダを突っ込みます。
両方のフォルダに適当な名前を付けといてください。私は「igo」と「igodic」というフォルダ名にしました。
で、application.pyを編集します。
# -*- coding : utf-8 -*- from flask import Flask app = Flask(__name__) from google.appengine.ext import db from google.appengine.api import users from flask import redirect, url_for, request, render_template, abort, flash, get_flashed_messages from igo.Tagger import Tagger @app.route('/parse/') def markov(): if request.args['sentence'] != None: parseword = request.args['sentence'] parsedword = Tagger('igodic').parse(parseword) hoge = '<parsewords>' for i in parsedword: hoge += '<surface>' + i.surface + '</surface>' hoge += '</parsewords>' return hoge else: return None # set the secret key. keep this really secret: app.secret_key = '適当な文字列' if __name__ == '__main__': app.run()
こんな感じに編集して動かしてみましょう。
PATH/google_appengine/dev_appserver.py ../flasktodo
http://localhost:8080/parse/?sentence=沢城みゆきちは天使です
これでこのままGAEに上げれば使えるんじゃないでしょうか