首页 > 解决方案 > 运行 selenium 脚本时出错 self._execute(Command.CLICK_ELEMENT)

问题描述

我在 python 中使用 selenium,我尝试单击,但每次都显示错误(在启动时正在工作)只在这一行出现错误,并尝试了 CSS 选择器 id 和所有。

    <span class="avatar" ng-click="showBlock($event);">
                        <img src="assets/images/user.png" alt="user image">
                    </span> 

selenium code ::
wait.until(EC.presence_of_element_located((By.XPATH,'//img[@alt="user image"]'))).click()

ERROR::
 self._execute(Command.CLICK_ELEMENT)
 return self._parent.execute(command, params)
 self.error_handler.check_response(response)

raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: Element <img src="assets/images/user.png" alt="user image"> is not clickable at point (1333, 34). Other element would receive the click: <div id="page_preloader" style="display: block;">...</div>
  (Session info: chrome=81.0.4044.122)
  (Driver info: chromedriver=2.43.600210 (68dcf5eebde37173d4027fa8635e332711d2874a),platform=Windows NT 10.0.18363 x86_64)

标签: selenium-webdriver

解决方案


尝试单击父级span

wait.until(EC.presence_of_element_located((By.XPATH,'//img[@alt="user image"]/parent::span'))).click()

如果这不起作用,请尝试 JS 点击:

el = driver.find_element_by_xpath("//img[@alt="user image"]")
driver.executeScript("arguments[0].click();", el);

推荐阅读