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

如何简化Python Selenium项目绝对导入,无需添加sys.path?

解决Python Selenium自动化中绝对导入无需手动添加sys.path的问题

问题根源

你遇到的ModuleNotFoundError是因为Python的sys.path里没有包含项目根目录/home/test/Documents/Internal_Dev/internal_automation。Python默认会把脚本所在目录和标准库路径加入sys.path,但你的create_task.py在project_1/Project_Tab/Project/Tasks/下,直接运行时无法识别上层的project_1模块。

无需手动添加sys.path的解决方案

1. 配置PYTHONPATH环境变量

把项目根目录加入系统的PYTHONPATH,让Python每次启动都自动识别这个路径:

  • Linux/macOS临时生效:在终端运行
    export PYTHONPATH="/home/test/Documents/Internal_Dev/internal_automation:$PYTHONPATH"
    
  • Linux/macOS永久生效:把上面的命令加到~/.bashrc或~/.zshrc(根据你使用的shell),然后重启终端或执行source ~/.bashrc生效。
  • Windows:打开「系统属性」→「高级」→「环境变量」,新建系统变量PYTHONPATH,值设为对应路径C:\...\Internal_Dev\internal_automation,重启命令行工具后生效。

2. 切换到项目根目录运行脚本

不要直接在create_task.py所在目录执行脚本,先切换到项目根目录:

cd /home/test/Documents/Internal_Dev/internal_automation

再用相对路径运行脚本:

python project_1/Project_Tab/Project/Tasks/create_task.py

此时Python会把当前工作目录(项目根目录)加入sys.path,你写的绝对导入语句就能正常工作。

3. 将项目转为可安装的包(推荐长期项目)

在项目根目录(internal_automation)下创建setup.py文件,内容如下:

from setuptools import setup, find_packages

setup(
    name="internal_automation",
    version="0.1.0",
    packages=find_packages(),
)

然后在根目录运行命令,把包安装为可编辑模式:

pip install -e .

安装完成后,无论你在系统哪个位置运行脚本,都能直接使用from project_1.Login import login这类绝对导入语句,完全不需要手动处理sys.path。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 19:57:22