如何在Snowpark中导入openpyxl?遇模块未找到错误求助
在Snowflake Snowpark Python中使用openpyxl的正确方法
核心原因
你遇到的ModuleNotFoundError是因为Snowpark Python执行环境不会自动加载Anaconda仓库中的所有包,必须在创建存储过程/用户定义函数(UDF)时显式声明依赖。
具体解决步骤
注册存储过程时指定依赖包
创建存储过程时,通过packages参数明确指定openpyxl,示例代码如下:from snowflake.snowpark import Session from snowflake.snowpark.types import StringType def run(session): import openpyxl # 编写你的业务逻辑(如读取/处理Excel文件) return "openpyxl加载成功" # 注册永久存储过程(需提前创建对应stage) session.sproc.register( func=run, name="MYPROC", packages=["openpyxl"], return_type=StringType(), is_permanent=True, stage_location="@your_custom_stage" )如果需要指定特定版本的
openpyxl,可以写成packages=["openpyxl==3.1.2"],确保版本与Snowpark兼容的Python版本匹配。Notebook临时测试加载
若在Snowpark Notebook中调试,可先执行以下语句临时加载包,再进行import:session.add_packages("openpyxl") import openpyxl
内容的提问来源于stack exchange,提问作者Nidhi
相关产品推荐
相关产品推荐

