一般在写一个项目的时候, 为了将项目模块化, 更加的清晰明了, 会将不同功能的模块放入不同的文件夹
项目如下:
├── spider
│ └── spider.py # 爬虫文件
└── utils...download
ValueError: attempted relative import beyond top-level package
但是你试图把相对路径去掉时, 又会得到:
# 找不到这个模块
ModuleNotFoundError...sys.path.append("../")
输出:
> import download
问题二:
mgd, 终于解决了,
but, 一般爬虫脚本, 要用crontab或其他定时调用脚本时, 要使用绝对路径..., 也就是在那里启用的脚本
方案一:
改变目录结构, 内容保持一致, 如下:
├── spider.py
└── utils
├── __init__.py
└── downloads.py...spider.py, 内容如下:
from utils.downloads import download
download()
方案二:
目录结构保持不变
在spider/spider.py, 开始处加上以下内容