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

如何解决Django启动时的ModuleNotFoundError:找不到scraper_app模块

解决Django启动时的ModuleNotFoundError: No module named 'scraper_app'问题

你的核心问题在于模块路径配置不匹配:

从你给出的文件结构来看,scraper_app是放在项目根目录下的djangoProject子文件夹里(和settings.py同级),而你在INSTALLED_APPS里直接写了'scraper_app',Python的模块搜索路径默认从manage.py所在的根目录开始,自然找不到嵌套在djangoProject里的scraper_app。

给你两种可行的解决办法:

方法一:修改INSTALLED_APPS配置

把INSTALLED_APPS里的'scraper_app'改成完整的模块路径:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # 修改这里的路径
    'djangoProject.scraper_app',
]

同时确认scraper_app文件夹里的apps.py内容正确,name字段保持为'scraper_app'即可:

from django.apps import AppConfig

class ScraperAppConfig(AppConfig):
    default_auto_field = 'django.db.models.BigAutoField'
    name = 'scraper_app'

方法二:调整文件结构(更符合Django常规项目结构)

把scraper_app文件夹从djangoProject子目录里移出来,放到manage.py所在的根目录下,让它和djangoProject文件夹平级,这样你的INSTALLED_APPS配置不需要修改,就能正常识别到scraper_app模块。

调整后的文件结构应该是:

djangoProject [**scraper**]
├── djangoProject
│   ├── __init__.py
│   ├── asgi.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── scraper_app  # 移到根目录
├── manage.py
├── templates
│   ├── results.html
│   └── search.html
└── venv
    ├── bin
    ├── lib
    └── pyvenv.cfg

验证方法

在manage.py所在的根目录打开终端,激活虚拟环境后,运行以下命令验证模块是否能被正常导入:

  • 如果用方法一:python -c "import djangoProject.scraper_app"
  • 如果用方法二:python -c "import scraper_app"

如果命令没有报错,说明模块路径已经正确配置,此时再启动开发服务器python manage.py runserver应该就能正常运行了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 10:22:47