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

Python脚本导入sec_api报ModuleNotFoundError错误如何解决

问题现象

运行调用sec_api的Python脚本时抛出模块找不到的错误,已将模块文件放在脚本同目录、且已申请有效API密钥,此前认为路径正确、模块可访问即可满足运行要求,无法定位配置错误。

测试代码如下:

from sec_api import QueryApi

queryApi = QueryApi(api_key="YOUR_API_KEY")

query = {
  "query": { "query_string": { 
      "query": "ticker:TSLA AND filedAt:{2020-01-01 TO 2020-12-31} AND formType:\"10-Q\"" 
    } },
  "from": "0",
  "size": "10",
  "sort": [{ "filedAt": { "order": "desc" } }]
}

filings = queryApi.get_filings(query)

print(filings)

运行后抛出的报错信息:

File "C:\Users\myusername\OneDrive\Desktop\classes\SP_22_courses\CS1110\pye_files\sec.py", line 7, in <module>
    from sec_api import QueryApi

ModuleNotFoundError: No module named 'sec_api'
故障原因
  • 脚本命名冲突:你当前运行的脚本文件名为sec.py,Python导入模块时会优先搜索脚本所在的当前目录,会优先将你自己写的sec.py识别为目标依赖的相关模块,直接打断sec_api的正常导入链路,这是本次报错的核心原因。
  • 安装方式错误:sec_api是需要通过包管理工具安装的第三方库,手动把模块文件丢到脚本同目录的方式,无法自动安装该库的关联依赖,也不符合Python第三方包的导入路径规则。
解决步骤
  • 重命名当前脚本:把sec.py改成和依赖名不冲突的名称,比如sec_10q_query.py,同时删除同目录下的__pycache__文件夹,清除旧的编译缓存避免干扰。
  • 正确安装依赖:打开你运行脚本所用的Python解释器对应的终端,执行安装命令python -m pip install sec-api,用官方包管理方式完成安装,自动处理所有关联依赖。如果电脑存在多版本Python,这个命令可以保证包装到你当前调用的Python环境里,不会出现装了包但解释器找不到的问题。
  • 验证运行:安装完成后执行python -m pip show sec-api,如果能正常输出包的版本、安装路径信息,直接运行重命名后的脚本即可,不需要手动把任何模块文件复制到脚本目录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 09:39:42