You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过.py文件执行.ipynb文件并实现Windows自动调度?

在Python脚本中运行Jupyter Notebook文件的方法

要在单个.py文件中批量运行.ipynb脚本,配合Windows任务计划程序实现自动调度,推荐以下两种实用方法:

方法一:使用官方工具nbconvert(简单直接)

nbconvert是Jupyter官方提供的工具,支持直接执行Notebook代码。

  1. 先安装依赖:
pip install nbconvert
  1. 在调度.py文件中,用subprocess调用命令批量执行:
import subprocess
import os

# 替换成你的Notebook文件路径列表
notebook_list = [
    r"C:\Projects\notebook1.ipynb",
    r"C:\Projects\notebook2.ipynb"
]

for nb_path in notebook_list:
    if os.path.isfile(nb_path):
        # 执行Notebook并覆盖原文件(保留执行输出)
        run_cmd = f"jupyter nbconvert --to notebook --execute {nb_path} --inplace"
        result = subprocess.run(run_cmd, shell=True)
        if result.returncode == 0:
            print(f"✅ {nb_path} 运行成功")
        else:
            print(f"❌ {nb_path} 运行失败")
    else:
        print(f"⚠️ 文件不存在:{nb_path}")
  • 参数说明:--execute触发代码执行,--inplace让执行结果覆盖原Notebook;若不想修改原文件,可添加--output指定新输出路径。

方法二:使用papermill(灵活支持参数化)

如果需要给Notebook传递动态参数,papermill是更合适的选择,它专门用于批量执行Notebook。

  1. 安装依赖:
pip install papermill
  1. 调度.py文件示例:
import papermill as pm
import os

notebook_list = [
    r"C:\Projects\notebook1.ipynb",
    r"C:\Projects\notebook2.ipynb"
]

for nb_path in notebook_list:
    if os.path.isfile(nb_path):
        # 指定执行后的输出文件,避免修改原文件
        output_nb = nb_path.replace(".ipynb", "_executed.ipynb")
        try:
            pm.execute_notebook(
                input_path=nb_path,
                output_path=output_nb
                # 可选:传递参数,比如parameters={"data_path": "C:/data.csv"}
            )
            print(f"✅ {nb_path} 运行成功,输出文件:{output_nb}")
        except Exception as e:
            print(f"❌ {nb_path} 运行失败:{str(e)}")
    else:
        print(f"⚠️ 文件不存在:{nb_path}")

Windows自动调度设置建议

  1. 打开「任务计划程序」,点击「创建基本任务」
  2. 设置触发器(比如每天凌晨2点运行)
  3. 操作选择「启动程序」:
    • 程序或脚本:填写Python的绝对路径(比如C:\Python310\python.exe)
    • 添加参数:填写调度.py文件的绝对路径(比如C:\Projects\run_notebooks.py)
  4. 勾选「不管用户是否登录都要运行」,确保任务能后台执行
  5. 手动触发任务测试,检查输出日志确认执行状态

内容的提问来源于stack exchange,提问作者Alex Felipe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 15:25:22