今天爬淘宝的时候出现点击位置被覆盖从而点击错误的问题:
selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <li data-kg-rate-filter-val="0">...</li> is not clickable at point (698, 21). Other element would receive the click: <a class="tb-tab-anchor" href="javascript:void(0);" hidefocus="true" data-spm-click="gostr=/tbdetail;locaid=d4" shortcut-key="g z" shortcut-label="查看专享服务" shortcut-effect="click" data-index="4" data-spm-anchor-id="2013.1.20140004.d4">...</a>
解决办法:
方法一:js注入
element = driver.find_element_by_css('div[class*="loadingWhiteBox"]')
driver.execute_script("arguments[0].click();", element)
方法二:ActionChains,需要先导入
element = driver.find_element_by_css('div[class*="loadingWhiteBox"]')
webdriver.ActionChains(driver).move_to_element(element ).click(element ).perform()
方法三:使用回车代替点击
driver.find_element(By.CSS_SELECTOR,"#submit").send_keys(Keys.ENTER)