現場データサイエンティスト奮闘記

とある企業で働くデータサイエンティストの日々のアウトプット

python

Flaskでリモートアドレスを request.remote_addr で取得するときの注意点

Flask の前にプロキシがあるときの対策 以下のように書けばよい if request.headers.getlist("X-Forwarded-For"): ip = request.headers.getlist("X-Forwarded-For")[0] else: ip = request.remote_addr 参考 python - Flask request.remote_addr is wrong o…

firebaseのid_tokenによる認証をPythonで行う方法

概要 firebaseのログイン処理は通常フロントエンドで行い、ユーザーをサーバーサイドで認証するときのデバッグ時などを想定 サーバーサイドで実装してるとローカルで試すときにfirebaseで発行されるid_tokenがないと認証処理ができなくてデバッグできなくて…

MeCab入りのPythonを実行するDockerfileの書き方

概要 自然言語処理を含んだアプリケーションをDocker imageで構築しようとしたらDockerfileの書き方を少し工夫しなきゃいけなかったので、そのメモです。 Dockerfileの書き方 プロジェクトは以下のような状況だとします。 project ├ src │ ├ main.py │ └ req…

GCPのCloud Functions + Cloud Scheduler + Cloud Source Repositoriesで任意のPythonを定期実行させる仕組みをつくる

データ分析でPythonを使っているのですが、データを加工して〜みたいな処理を毎日やるタスクが地味にあったりするので自動化したいです。 最近はGCPも触っているので、GCPのサービスだけでそれを実現できないかなと考えました。いわゆるサーバレスな構成にな…

Dockerコンテナでpythonを動かしてSlack Webhookを使ってみた

背景 会社の分析チーム内で、GKEやDockerコンテナだのを使う話が出てきました。 しかし、Dockerとか全く触ったことがないので、その勉強と練習を兼ねてやってみたという記事です。 PythonとSlack APIは普段から触ってるので、材料としてちょうど良さそうだっ…