※2016年6月21日に書いたブログ記事からの転記です。
App Engineアプリケーションでサードパーティ製のライブラリを使うときは、やはり lib であるとかいったフォルダに整理したくなるわけですが、そうするとパッケージが import を失敗するようになって動かない、なんてことがあります。そういう場合は、appengine_config.py というファイルを使ってパスを通しておくことで解決できます。
「パスを通しておく」というのは、「import するときはココも探しに行くように!」とアプリケーションに予め教えてあげることです。
さて、appengine_config.py の具体的な内容ですが、以下のような記述をします。
import os
import sys
ROOTPATH = os.path.dirname(__file__)
LIBPATH = os.path.join(ROOTPATH, 'lib')
sys.path.append(LIBPATH)
こうしておくと、import の際に lib の中を探しにいくようになります。
この appengine_config.py を保存しておく場所は、app.yaml と同じフォルダ(アプリケーションのルート)です。
つまりこういうことです。
my_app_id/
app.yaml
appengine_config.py
lib/
以上です。