早上好,我遇到了一个脚本问题,这是由我的一位同事提出的。
重点是要有一个包装驱动程序,它扩展了python的某些可用性,其中我们提供了一些使鼠标悬停操作更容易的方法,而其中的一些其他功能则具有
Class SuperDriver:
def __init__(self, driver: object) -> object:
self._driver = driver
def wait_and_get(self, mode, key):
return WebDriverWait(self._driver, self.WAIT_TIMEOUT).until(EC.visibility_of_element_located((mode, key)))
def wait_and_move_to(self, mode, id):
elem = self.wait_and_get(self._driver, mode, id)
ActionChains(self._driver).move_to_element(elem).perform()
Run Code Online (Sandbox Code Playgroud)
当我尝试在另一个脚本中使用它时
from utils.super_driver.SuperDriver import SuperDriver
Class class1:
def class1_test(self):
sd1 = Superdriver(driver)
sd1.wait_and_move_to(driver, By.XPATH, xpath)
Run Code Online (Sandbox Code Playgroud)
然后说
TypeError:wait_and_move_to()接受3个位置参数,但给出了4个
我尝试过
sd1.wait_and_move_to(By.XPATH, xpath)
Run Code Online (Sandbox Code Playgroud)
这次说
TypeError:wait_and_get()接受3个位置参数,但给出了4个
sd1.wait_and_move_to(xpath)
Run Code Online (Sandbox Code Playgroud)
这导致
TypeError:wait_and_move_to()缺少1个必需的位置参数:'id'
sd1.wait_and_move_to(self, By.XPATH, xpath)
Run Code Online (Sandbox Code Playgroud)
这导致了
TypeError:wait_and_move_to()缺少1个必需的位置参数:'id'
我想到的所有内容,但无济于事,因此,感谢您的帮助。
谢谢!