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] [show_iframe] [width] [height]
port
: サーバーのポート番号を指定します。デフォルトは8000
です。file
: サーバーとして起動するために書き出すPythonファイル名を指定します。デフォルトはserver.py
です。remove
: サーバーを起動した後に書き出したファイルを削除するかどうかを指定します。デフォルトはTrue
です。show_iframe
: 起動したサーバーにアクセスするIFrameを表示するかどうかを指定します。デフォルトはFalse
です。width
: IFrameの幅を指定します。デフォルトは500
です。height
: IFrameの高さを指定します。デフォルトは500
です。
%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
Built Distribution
File details
Details for the file runservermagic-2.0.0.tar.gz
.
File metadata
- Download URL: runservermagic-2.0.0.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 782c9be40e262f82cb65672cf1cc63830ec0d90c96e06c819c8ce7d30ffd4b67 |
|
MD5 | 093932f2d4caaf61ce7aedbe2af02731 |
|
BLAKE2b-256 | eead0869b26b2f3452573bb0f3356060dda636c352d0f6e0ffebd94f02d2d644 |
File details
Details for the file runservermagic-2.0.0-py3-none-any.whl
.
File metadata
- Download URL: runservermagic-2.0.0-py3-none-any.whl
- Upload date:
- Size: 4.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.3
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cc88ab952a5dd2a128b414ecf943a548bb8f050a0f25a89459ec3acea9ba1ebc |
|
MD5 | b42a9c561223dd235890460091fd6df2 |
|
BLAKE2b-256 | 6a5194d7f72139bbb2d8a2c684684657a6b5def80495189484e1bd39b2dd619c |