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

运行Selenium代码遇AttributeError: 'function' object has no attribute 'driver'错误求解决

解决AttributeError: 'function' object has no attribute 'driver'错误

错误原因及修复步骤:

  • 1. 局部driver未绑定到实例:new_login方法里的driver是局部变量,没有赋值给self.driver,导致new_tests无法通过self.driver访问浏览器实例。
  • 2. 错误的类实例创建方式:obj = Demo只是引用类对象,不是创建实例,应该用obj = Demo()。
  • 3. 错误的方法调用与导入:实例调用方法时不需要手动传self,且from self import self是完全错误的导入,直接删掉这行。
  • 4. 方法名拼写错误:send_key应该是send_keys(Selenium的正确方法名)。

修正后的代码:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By


class Demo:
    def new_login(self):
        # 将driver绑定到实例属性,供其他方法调用
        self.driver = webdriver.Chrome()
        self.driver.get("https://opensource-demo.orangehrmlive.com/web/index.php/auth/login")
        self.driver.maximize_window()

    def new_tests(self):
        # 访问实例的driver属性,修正send_key为send_keys
        self.driver.find_element(By.XPATH, "//input[@placeholder='Username']").send_keys("Admin")


# 创建类的实例
obj = Demo()
# 调用实例方法,无需手动传入self
obj.new_login()
obj.new_tests()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 02:45:39