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()

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

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

実行するとサーバーを起動し、IFrameでサーバーにアクセスし出力されたwebページを表示します。

%%runserv 8000

from flask import Flask

app = Flask(__name__)


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


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

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

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

別のセルからIPython.display.IFrameを使用してwebページを表示することもできます。server_urlには直前に%%runservで起動したサーバーのURLが格納されています。

import IPython

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

マジックコマンド

%%runserv

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

%%runserv [port] [show_iframe] [width] [height]
  • port: サーバーのポート番号を指定します。デフォルトは 8000 です。
  • show_iframe: 起動したサーバーにアクセスするIFrameを表示するかどうかを指定します。デフォルトは False です。
  • width: IFrameの幅を指定します。デフォルトは 500 です。
  • height: IFrameの高さを指定します。デフォルトは 500 です。

%endserv

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

%endserv [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-3.0.0.tar.gz (4.5 kB view details)

Uploaded Source

Built Distribution

runservermagic-3.0.0-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for runservermagic-3.0.0.tar.gz
Algorithm Hash digest
SHA256 24022c8e4b9f2ace5b4ac965e772c71534860296ab5078bdf8ae356c1e45b6be
MD5 14fdaf5efc3cbb9d1da1729950b5eb82
BLAKE2b-256 425f40ed0ae59c3f711438960d11258c16290f79761539e9ae3e033be42c332c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for runservermagic-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1831e547c98d065d090b98d39a79eec7acfabbca351a894bac7b43a0752464f2
MD5 ca2cdbef42d2ef2130a87d2d1fbe89ea
BLAKE2b-256 c801815906e388c8dafc3ccd901f83009cc767a025362900a4c45c989188c998

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