'Python selenium - no search results showing when search button is clicked

I have successfully automated Edge (and Chrome) to the correct page for searching broadband prices and also entered a postcode into the search box. However, when I click the search button, it doesn't show me the results of that search. I need to get the results for several postcodes and scrape the results to pandas eventually. I have identified the search button successfully (I believe) via different methods (Xpath, CSS selector) but the clicking and returning of results is not working automatically. The website works fine when used normally (not automating it).

Here is my python code:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.remote.webelement import WebElement
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait

#Other imports here
import os
import wget


driver = webdriver.Edge('msedgedriver.exe')

driver.get("https://www.thinkbroadband.com/packages")

# Cookie consent button click
consent = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "/html/body/div[3]/div[2]/div[1]/div[2]/div[2]/button[2]"))).click()
consent2 = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "/html/body/div[3]/div[2]/div[2]/div[3]/div[2]/button[1]"))).click()

# inputting postcode
postcode_input_box = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "/html/body/div[2]/div[7]/div/div/div/form[1]/div[1]/input")))
postcode_input_box.send_keys("se19qu")

# identify search button
search_button = WebDriverWait(driver, 30).until(EC.element_to_be_clickable((By.XPATH, "//*[@id='broadband-package-search']/form[1]/div[2]/input")))

# Click the search button - neither method works
#search_button.send_keys(Keys.ENTER)
search_button.click()


I know there's some process of interrogating a database of results for the postcode but I'm not sure how to automate that without using the web page elements I've used here.

Many thanks.

Update: There is a table of results present by default before searching but it is non-specific. When a search is done on a postcode it states it on the page, see image:

Image of search results

This is the output I can't generate.



Solution 1:[1]

Maybe try using the class or the css selector in my experience the css selector works when the xpath doesn't

CSS selector: .submit

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Ranger 4860