jupyter 服务端扩展开发

1、项目结构
复制代码
jupyter_code/
├── jupyter_code/
│   ├── __init__.py      # 修复后的代码
│   ├── handlers.py      # 修复后的代码
│   └── __pycache__/
├── setup.py             # 修复后的代码
├── MANIFEST.in          # (可选)包含额外文件
├── README.md            # (可选)文档
├── test_extension.py    # 测试脚本(没有做)
└── verify_extension.py  # 验证脚本(没有做)

# setup.py
from setuptools import setup

setup(
    name="jupyter_code",
    version="0.1.0",
    packages=["jupyter_code"],
    install_requires=["jupyterlab", "tornado"],
    entry_points={
        "jupyter_server_extension": [
            "jupyter_code = jupyter_code"
        ]
    },
)

# __init__.py
from .handlers import HelloWorldHandler


def load_jupyter_server_extension(server_app):
    """用于加载Jupyter服务器扩展的函数。"""
    handlers = [
        (r"/jupyter_code/hello", HelloWorldHandler)
    ]
    server_app.web_app.add_handlers(".*$", handlers)
    server_app.log.info("jupyter_code 扩展已加载")

# handlers.py
from jupyter_server.base.handlers import APIHandler
from tornado import web


class HelloWorldHandler(APIHandler):
    @web.authenticated
    def get(self):
        self.finish("Hello, world!")
2、然后打包安装。
复制代码
python setup.py  bdist_wheel

pip install dist\jupyter_code-0.0.1-py3-none-any.whl

网上的注册扩展做法

复制代码
jupyter server extension enable jupyter_code

测试后发现不起作用

3. 手动配置扩展

如果扩展已安装但未自动注册,可以手动配置:

A. 创建配置文件
复制代码
# 生成默认配置文件(如果不存在)
jupyter server --generate-config

# 编辑配置文件
vim ~/.jupyter/jupyter_server_config.py
B. 添加扩展配置
复制代码
# 在 jupyter_server_config.py 中添加
c.ServerApp.jpserver_extensions = {
    'jupyter_code': True,

}
相关推荐
外收内放21 分钟前
Python基础语法练习题(59-原始版本与优化版本)
开发语言·python
ASS-ASH24 分钟前
从力学与机械原理角度深度剖析:尊界V800刹车踏板支架断裂事件的技术逻辑
人工智能·python·数据可视化·机械工程·汽车安全·物理仿真·制动系统
xhy_070725 分钟前
AI 读了 .env,密钥会原样发给大模型吗?WES Code 的密钥打码(附实测)
人工智能·python·数据挖掘·flask·ai编程·wes code
泡海椒32 分钟前
JQuick-Excel 实战:用 STYLE 配置单元格与区域样式
开发语言·python·excel
威联通网络存储37 分钟前
TS-h1283XU-RP 在医药批记录与检验场景的部署
网络·python
Patrick在香港1 小时前
时间戳凭空早了 8 小时:datetime.utcnow() 弃用实测与漂移复盘
数据库·python·标准库·datetime·时区·弃用
东莞市云毅网络有限公司7 小时前
AI 引用句逐条回指原文:让回答可回溯的校验实现
python·数据清洗·rag·企业知识库·文档解析
数字融合9 小时前
透明化视频三维矿山井下照明重建技术
人工智能·python·数码相机
yi0119 小时前
LeetCode 219:存在重复元素 II——哈希表记录“最近一次出现的位置”
数据结构·人工智能·笔记·python·算法·leetcode·哈希表
Marst Code10 小时前
上位机开发日记 · 第 2 篇 · 架构先行:六层分层与边界
python