Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I remove an element in selenium python

I was wondering how to remove an element in selenium python, I'm wanting to remove a chatBox in a website like how you would if you manually did it by pressing backspace, but I want to do it in selenium. So far I've tried this

chatBox = driver.find_element(By.XPATH, "//div[@class='chatContainer oldStyle']").remove()

This line of code gives the error

AttributeError: 'WebElement' object has no attribute 'remove'

Any help would be much appreciated

like image 289
stinkiepinkie Avatar asked Mar 11 '26 22:03

stinkiepinkie


2 Answers

I found a solution to this, this is the code I used to fix it

        try:
            element = driver.find_element_by_xpath("//div[@class='chatContainer oldStyle']")
        driver.execute_script("""var element = arguments[0]; 
            element.parentNode.removeChild(element);""", element)
        except Exception:
            pass
like image 118
stinkiepinkie Avatar answered Mar 13 '26 11:03

stinkiepinkie


You can use javascript to remove the element.

chatBox = driver.find_element(By.XPATH, "//div[@class='chatContainer oldStyle']")
driver.execute_script("arguments[0].remove();", chatBox)
like image 27
questioning Avatar answered Mar 13 '26 12:03

questioning