def add_shopping(self): self.get(User_shopping_process.URL_shopping.value) self.click(User_shopping_process.LOC_搜索框) self.send_keys(User_shopping_process.LOC_搜索框,'直磨机') self.click(User_shopping_process.LOC_搜索按钮) hand = self.get_handles() self.click(User_shopping_process.LOC_商品框) self.switch_window(hand) self.click(User_shopping_process.LOC_型号) > self.execute_script("arguments[0].removeAttribute('readonly')",self.find_element(By.XPATH,'//*[@id="text_box"]')) E TypeError: BasePage.find_element() takes 2 positional arguments but 3 were given
时间: 2023-06-24 12:08:08 浏览: 187
根据错误提示,`BasePage.find_element()`方法只需要传入两个参数,但是在 `self.execute_script()` 方法中传入了三个参数,导致出现了 `TypeError` 错误。
建议检查 `BasePage.find_element()` 方法的实现代码,看看是不是多传了一个参数。如果确认该方法只需要传入两个参数,则需要修改 `self.execute_script()` 方法的调用方式,只传入两个参数即可。
相关问题
def add_shopping(self): self.get(User_shopping_process.URL_shopping.value) self.click(User_shopping_process.LOC_搜索框) self.send_keys(User_shopping_process.LOC_搜索框,'直磨机') self.click(User_shopping_process.LOC_搜索按钮) hand = self.get_handles() self.click(User_shopping_process.LOC_商品框) self.switch_window(hand) self.click(User_shopping_process.LOC_型号) > self.execute_script("arguments[0].removeAttribute('readonly')", User_shopping_process.LOC_数量) E TypeError: User_shopping.execute_script() takes 2 positional arguments but 3 were given
这个错误提示是因为在调用 `execute_script` 方法时传入了 3 个参数,但该方法只接受 2 个参数。可以尝试修改代码如下:
```
def add_shopping(self):
self.get(User_shopping_process.URL_shopping.value)
self.click(User_shopping_process.LOC_搜索框)
self.send_keys(User_shopping_process.LOC_搜索框,'直磨机')
self.click(User_shopping_process.LOC_搜索按钮)
hand = self.get_handles()
self.click(User_shopping_process.LOC_商品框)
self.switch_window(hand)
self.execute_script("arguments[0].removeAttribute('readonly')", User_shopping_process.LOC_数量)
self.click(User_shopping_process.LOC_型号)
```
这样就可以避免传入多余的参数,执行脚本时也不会出现错误了。
阅读全文