Skip to main content

jupyter kernel websocket client

Project description

jupyter_kernel_client

Code execution client based on jupyter server websocket

How to use

1. Start Jupyter Server(or Lab)

Enter the following command to start

jupyter server

By default, you'll get output like below, and you can get your server host is localhost, port is 8888, token is fa42b5d1f787df44f5ca70a88c4fa6f2d42fdb4a1838c59b

...
[C 2022-12-12 17:37:40.953 ServerApp]
        http://localhost:8888/?token=fa42b5d1f787df44f5ca70a88c4fa6f2d42fdb4a1838c59b
     or http://127.0.0.1:8888/?token=fa42b5d1f787df44f5ca70a88c4fa6f2d42fdb4a1838c59b

2. Start a kernel

Using Jupyter Server REST API to start a kernel

see: POST /api/kernels

TODO: Start kernel by client

3. Connect to kernel and execute code

You can get the kernel_id in the request to start the kernel

from jupyter_kernel_client.client import KernelWebsocketClient

client = KernelWebsocketClient(
    kernel_id=kernel_id,  # you can get it in 2. Start a kernel
    port='8888',  # you can get port in 1. Start Jupyter Server(or Lab)
    host='localhost',  # you can get host in 1. Start Jupyter Server(or Lab)
    token=token,  # you can get token in 1. Start Jupyter Server(or Lab)
)

code = """
print('hello world')
"""

import asyncio

result = asyncio.run(client.execute(code))
print(result)

You will get

{'outputs': [{'output_type': 'stream', 'name': 'stdout', 'text': 'hello world\n'}], 'execution_count': 1}

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

jupyter_kernel_client-0.1.4.tar.gz (6.6 kB view hashes)

Uploaded Source

Built Distribution

jupyter_kernel_client-0.1.4-py3-none-any.whl (5.5 kB view hashes)

Uploaded Python 3

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