LoginSignup
34

More than 5 years have passed since last update.

Python最速ウェブ開発

Last updated at Posted at 2017-12-25

前回はdjangoを使って3時間でウェブアプリを作ってみました。
今度は、Python anywhereを使ってPythonの最速ウェブ開発に挑戦してみます!

スクリーンショット 2017-12-25 13.12.44.png

:point_up:まずはアカウント作成をしてサインアップしましょう!
1. EC2をベースのホスティングが手軽にできる
2. ウェブ上のエディタから開発可能
3. エディタには構文チェッカーとライブラリがフルセットで装備されてる
4. developperチームとお話できる(海外製品のこういうとこはいいですね)
5. フリーでアカウント作成可能

:point_up_tone2:フリーアカウント注意点:
1. 作成可能な子アカウントの数が1ユーザーに制限されている
2. アプリからのインターネットアクセスは帯域制限されている
3. CPU/帯域がロースペック
9. IPython/Jupyter notebookはサポート対象外

1.サインアップ

  1. サイトからアカウント作成しましょう
  2. いきなりチュートリアル始まるので適当にすすめます
  3. djangoのチュートリアルを進めたいにチェックしちゃいました

スクリーンショット 2017-12-25 13.30.19.png

2.ダッシュボード

  1. Consoles - コンソールが開きます
  2. Files - /homeユーザー名以下のファイルが閲覧編集できます
  3. Notebooks - 無料アカウントではサポートされてません
  4. WebApps - ウェブアプリを作成できます

3.ウェブアプリ作成

スクリーンショット 2017-12-25 13.37.45.png
1. WebAppsをクリックして指示に従っていきます
2. 無料だとオリジナルのドメインが使えないです
3. フレームワークはDjango,Python 3.6を選びます
4. Project Name: mystic, Directory: /home/marimurotani/を選びます
5. これでインスタンスが作成されます
6. 出来上がったドメイン(http://marimurotani.pythonanywhere.com/)にアクセスすると早速フレームワークの初期画面が見れます
サーバー画面.png

注意事項
少なくとも3ヶ月に1回はログインをして本日より3ヶ月インスタンスを起動したままにするボタンを押さないといけません
「Run until 3 months from today」をポチりましょう

4.DB作成

実際にコードを書き始める前にMySQLをセットアップします
画面右上のDatabasesをクリックして、パスワードを入力、Initialize MySQLボタンを押します
スクリーンショット 2017-12-25 13.53.12.png
1. 無料だとMySQLのコンソール機能が使えません
2. Create a databaseにmysiteと入力して「Crete」ボタンを押します
2. Database host address: Username:と先ほど入力したパスワードを覚えておきましょう

5.DBの設定をする

画面上部のメニューからWebに戻ってCodeのところを参照します
Go to directoryリンクがあるのでそこからSource codeへ遷移しましょう

接続設定を書き込みます

mysite/mysite/settings.py
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'MariMurotani$mysite',
        'USER': 'xxxxx',
        'PASSWORD': 'xxxxx',
        'HOST': 'MariMurotani.mysql.pythonanywhere-services.com',
        'PORT': '',
    }
}

Webのサーバーダッシュボードに戻って「Reloadサーバー名」ボタンを押しましょう!

5. Adminサイトの設定をする

Consolesメニューからbashにログインしましょう

まずはMigrateを実行してDBを初期化します

python3 manage.py migrate

スクリーンショット 2017-12-25 14.43.32.png

スーパーユーザー作成します

python3 manage.py createsuperuser

スクリーンショット 2017-12-25 14.44.11.png

Adminサイトへアクセスして先程作成したユーザー名、パスワードを入力してログインします
http://marimurotani.pythonanywhere.com/admin/

スクリーンショット 2017-12-25 14.46.48.png

こんな感じで、サーバーの準備〜Admin画面のインストールまで一気に終了しました!
ここからはモデルをどんどん増やしてAPIを追加したりどんどん作業が進む事でしょう!

追伸:
本当はデプロイツールを探してたのですが面白そうなので試してみました
デプロイもいい方法をなんか考えて行きましょう

ついでに・・・・

Word2vecのwikipedia学習済みモデルを公開している人がいたので、データを拝借してAPIを作ってみました。
posiに足す言葉、negaに引く言葉を入れてみましょう。このままだと割りと使い物にならないという事が判明しました。

http://marimurotani.pythonanywhere.com/api/r1?posi=就活,新卒,成功&nega=男性

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
34