stinkiepinkie
stinkiepinkie

Reputation: 105

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

Upvotes: 3

Views: 4316

Answers (2)

questioning
questioning

Reputation: 287

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)

Upvotes: 2

stinkiepinkie
stinkiepinkie

Reputation: 105

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

Upvotes: 7

Related Questions