I'm getting this very weird output where the values from the first listing on a website (Airbnb) gets repeated over and over inside a list instead of going through the other listings on the same page.
Here is the code with a few modifications:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
options = Options()
userAgent = "your user agent"
options.add_argument(f'user-agent={userAgent}')
s=Service('path to chromedriver.exe')
driver = webdriver.Chrome(service=s,options=options)
list_of_elements = []
driver.get(f'https://www.airbnb.ca/s/B%C3%A1varo--Punta-Cana--Dominican-Republic/homes?tab_id=home_tab&refinement_paths%5B%5D=%2Fhomes&flexible_trip_dates%5B%5D=april&flexible_trip_lengths%5B%5D=weekend_trip&date_picker_type=calendar&query=B%C3%A1varo%2C%20Punta%20Cana%2C%20Dominican%20Republic&place_id=ChIJvS_LgZbrqI4RR9CfLU-08NI&checkin=2022-03-03&checkout=2022-04-03&source=structured_search_input_header&search_type=filter_change&ne_lat=18.738461058594805&ne_lng=-68.06335542053222&sw_lat=18.31201393883261&sw_lng=-68.6009988531494&zoom=11&search_by_map=true')
elements = WebDriverWait(driver,30).until(EC.visibility_of_all_elements_located((By.XPATH,"//div[@itemprop='itemListElement']")))
for element in elements:
guests = element.find_element(By.XPATH,"//div/div/div[@role='group']/div[2]/div[3]/span[1]").text
bedrooms = element.find_element(By.XPATH,"//div/div/div[@role='group']/div[2]/div[3]/span[3]").text
beds = element.find_element(By.XPATH,"//div/div/div[@role='group']/div[2]/div[3]/span[5]").text
baths = element.find_element(By.XPATH,"//div/div/div[@role='group']/div[2]/div[3]/span[7]").text
list_of_elements.append([guests,bedrooms,beds,baths])
print(list_of_elements)
driver.quit()
I'm getting this output for example: list_of_elements => [[2 guests,1 bedrooms,3 beds,4 baths],[2 guests,1 bedrooms,3 beds,4 baths],[2 guests,1 bedrooms,3 beds,4 baths],[2 guests,1 bedrooms,3 beds,4 baths],[2 guests,1 bedrooms,3 beds,4 baths],...]