当前位置 博文首页 > 孤寒者的博客:ImportError: attempted relative import with no

    孤寒者的博客:ImportError: attempted relative import with no

    作者:[db:作者] 时间:2021-07-25 18:36

    本人在做调用超级鹰API解决点触验证码时,两次出现本报错。在一系列查阅资料及百度后解决,步骤如下:(注意:如果项目目录结构简单且无中文目录,直接使用绝对路径即可解决!!!)

    1.项目目录:

    在这里插入图片描述

    2.首先,我想在12306_selenium.py文件中调用chaojiying.py文件下的一个类,出现此报错:

    调用方法:(此处使用的相对路径调用!)

    在这里插入图片描述

    在这里插入图片描述
    既然在调用时出错,也就是说解释器找不到我们想要调用的.py文件,那么我们通过sys.path(sys.path是python的搜索模块的路径集,是一个list)观察一下在路径集中有没有chaojiying.py文件的父级目录即:点触验证码的绝对路径!
    在这里插入图片描述
    在这里插入图片描述
    结果出人意料,路径集中是有chaojiying.py文件的父级目录的路径的,那么我们改一下调用语句,直接如下即可:
    在这里插入图片描述到此,此报错解决!

    3.然后,我想在12306_selenium.py文件中调用password中的三个变量CA,CP,SI,出现此报错:

    调用方法:(此处使用的相对路径调用!)

    在这里插入图片描述
    在这里插入图片描述
    思路同上,通过sys.path观察路径集,发现里面没有password.py的父级目录。既然没有,我们就往sys.path里面添加即可:

    在这里插入图片描述
    在这里插入图片描述
    到此,路径集里有了需要调用的password.py文件的父级目录,那么我们改一下调用语句如下即可:
    在这里插入图片描述

    注意:sys.path.append()添加相关的路径,但在退出python环境后自己添加的路径就会自动消失!

    cs