将命令动态插入到 Databricks 中的现有笔记本中
Dynamically insert a command into an existing notebook in Databricks
在这个 post 中回答这个很棒的答案:
Create a notebook inside another notebook in Databricks Dynamically using Python
在展示如何动态创建全新笔记本的地方,我的问题是将命令插入现有笔记本。
鉴于
ctx = json.loads(dbutils.notebook.entry_point.getDbutils().notebook().getContext().toJson())
notebook_path = ctx['extraContext']['notebook_path']
content = "some code"
是否可以在 notebook_path
处将 content
附加到笔记本中?
没有单独的 API 用于将代码附加到笔记本。但是您可以使用 Workspace API 导出给定的笔记本,解码 base64 编码的内容,附加代码,然后将 overwrite
参数设置为 true
.
再次导入
最好添加以下行:
# COMMAND ----------
添加到新代码的开头,以便在笔记本中将其视为新单元格。
另外,笔记本的权限可能会被重置,如果你想避免这种情况,那么你可以使用Notebook Permissions API获取当前权限,然后在导入后重新设置。
在这个 post 中回答这个很棒的答案: Create a notebook inside another notebook in Databricks Dynamically using Python 在展示如何动态创建全新笔记本的地方,我的问题是将命令插入现有笔记本。
鉴于
ctx = json.loads(dbutils.notebook.entry_point.getDbutils().notebook().getContext().toJson())
notebook_path = ctx['extraContext']['notebook_path']
content = "some code"
是否可以在 notebook_path
处将 content
附加到笔记本中?
没有单独的 API 用于将代码附加到笔记本。但是您可以使用 Workspace API 导出给定的笔记本,解码 base64 编码的内容,附加代码,然后将 overwrite
参数设置为 true
.
最好添加以下行:
# COMMAND ----------
添加到新代码的开头,以便在笔记本中将其视为新单元格。
另外,笔记本的权限可能会被重置,如果你想避免这种情况,那么你可以使用Notebook Permissions API获取当前权限,然后在导入后重新设置。