utamaro’s blog

誰かの役に立つ情報を発信するブログ

2018-09-01から1ヶ月間の記事一覧

DjangoでGoogleアカウントの認証機能を入れる方法

Djangoのログイン機能でGoogleのアカウントを使った方法を入れます。 必要なライブラリをインストールします。 pip install django python3-openid social-auth-app-django (ついでにherokuで必要なライブラリも入れたい場合は↓をどうぞ) pip install djan…

pythonでBeautifulSoupを使ったスクレイピング

pythonでBeautifulSoupを使ったスクレイピング python3.6.4を使用しています。 必要なライブラリをインストールします。 pip install beautifulsoup4 requests lxml beautifulsoup4はスクレイピングのライブラリ。 requestsはgetとかpostのリクエストに使う…

mysqlclientでdict型のデータを取得する方法

通常、selectをしたときはtupple型で取得されます。 少し使いづらいので、dict型で取得できるようにします。 connectを取得して、cursorにDictCursorを設定するだけです。 from MySQLdb.cursors import DictCursor self.connect = _mysql.connect( host=DATA…

watchdogを使ってファイルを監視する

カレントディレクトリの*.logに変更があった場合にMyHandler内のメソッドが実行される。 最初は.logファイルで修正したらon_modifiedが呼ばれると考えていたが、実際はon_deleted、on_createdの順番で呼ばれていた。 class MyHandler(PatternMatchingEventHa…

DjangoのORMを使わないでクエリを実行する方法

ORM(object relational mapper)を使うべきか、使わざるべきかの議論を時々目にします。 Author.objects.all()←こういうやつです。 今回は、DjangoでORMを使わずにクエリを書いてDBからデータを取得する方法を紹介します。 クエリの生成にはjinjasqlというp…

Djangoのtemplate内でurlの逆引きをする方法

逆引きをやることで、何がいいのか。 やらなくてもできますが、べた書きする必要があります。 例えば、anchorタグのhref属性に/api/hoge/delete/{{id}}と書いたりすることになります。 複数の場所で↑のように書いてた場合は修正が大変になります。 あと、tem…

Django+herokuで無料サービスを作る

Djangoとherokuを使って費用0(初期投資を含めません)でサービスを公開するところまで解説します。 サーバ代0円 期間はだいたい3日 この記事は https://sticky-cards.herokuapp.com/ を作ったときに得たノウハウをまとめています。 (ログイン不要で使える…

Djangoをherokuにデプロイする

herokuの用意 アカウント作成 アプリケーションを作成 開発環境を用意する macを対象にしています。 ※ brewをインストールしていることが前提です。 herokuをインストールする brew install heroku 以上です。 herokuのコマンド ログインする heroku login h…

Djangoのプロジェクト構造について

Djangoのプロジェクト構造について紹介します。 一般的な(ドキュメントに書いてあるような)構造とは少し異なります。 まずは全体の構造を紹介します。 ./ ├── Procfile <== heroku用 ├── README.md ├── app │ ├── __init__.py │ └── card │ ├── __init__.p…