Skip to main content

Magic command to run Juypter's code cell on the server.

Project description

RunServer Magic Command

概要

Jypyter(notebook/lab)・VSCodeまたはGoogle ColabでコードセルのPythonコードをサーバーとして起動するマジックコマンドです。

使い方

マジックコマンドの追加

コードセルに以下のコードを貼り付けて実行しマジックコマンドを登録してください。カーネルやランタイムを再起動する度に再実行する必要があります。

%pip install -q runservermagic
from runserver import register_run_server
register_run_server()

マジックコマンドの使い方

コードセルの冒頭に%%run_serverマジックコマンドを記述してください。実行するとコードセルのコードがサーバーとして実行されます。
以下はFlaskでHello Worldを表示するサーバーの例です。

%%run_server 8000 flask_app.py

from flask import Flask

app = Flask(__name__)


@app.route("/")
def hello():
    return "Hello World!"


app.run(port={{server_port}})

{{server_port}} はマジックコマンドの引数で指定したポート番号に置き換えられます。

起動したサーバーを停止するには%stop_serverマジックコマンドを別のコードセルから実行してください。
同じポート番号でサーバーを起動した場合は、自動的に古いサーバーを停止してから新しいサーバーを起動します。

ノートブック内でサーバーにアクセスしてwebページを表示する場合は、IPython.display.IFrameを使用します。
server_urlには直前に%%run serverで起動したサーバーのURLが格納されています。

import IPython

IPython.display.IFrame(src=f"{server_url}/", width="100%", height=500)  # type: ignore

マジックコマンド

%%run_server

セル内のPythonコードをサーバーとして起動します。

%%run_server [port] [file] [remove]
  • port: サーバーのポート番号を指定します。デフォルトは 8000 です。
  • file: サーバーとして起動するために書き出すPythonファイル名を指定します。デフォルトは server.py です。
  • remove: サーバーを起動した後に書き出したファイルを削除するかどうかを指定します。デフォルトは True です。

%stop_server

起動したサーバーを停止します。

%stop_server [port]
  • port: 停止するサーバーのポート番号を指定します。デフォルトは 8000 です。

グローバル変数

run_serverマジックコマンドがあるセルを実行した後には以下のグローバル変数が登録されています

  • server_url: 直前に起動したサーバーのURLが格納されています。
  • server_url_{port番号}: 指定のポート番号で起動したサーバーのURLが格納されています。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

runservermagic-1.0.2.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

runservermagic-1.0.2-py3-none-any.whl (4.2 kB view details)

Uploaded Python 3

File details

Details for the file runservermagic-1.0.2.tar.gz.

File metadata

  • Download URL: runservermagic-1.0.2.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.3

File hashes

Hashes for runservermagic-1.0.2.tar.gz
Algorithm Hash digest
SHA256 42ebd4d9c281dded9162be6d1ca8e243576c096243a47872a71cba331ec6d9c9
MD5 e2ef4d41368e471e9e0c0a83a273f46f
BLAKE2b-256 7fa0dc438c0c92f1b74817e2d0aad9a42573f994dce060320cd920c6b4fe2d80

See more details on using hashes here.

File details

Details for the file runservermagic-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for runservermagic-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 78d26c656260dd6be93e774730cec82d206ff959a3b305a21f7bceaf7ef595e7
MD5 6e47b798b39b9f401a8c8baecb8f88aa
BLAKE2b-256 7fbc1fe64279843d41e378b7bb3a9852a0eadf61854edbc59054bfbcf8c26695

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page