part 3 - headless

1

add

from selenium.webdriver.chrome.options import Options

and

options = Options()
options.add_argument("--headless")

also,

driver = webdriver.Chrome(options=options)
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.chrome.options import Options

options = Options()
options.add_argument("--headless")
driver = webdriver.Chrome(options=options)
driver.get('https://sandbox.oxylabs.io/products')

WebDriverWait(driver,10).until(
    EC.presence_of_all_elements_located((By.CSS_SELECTOR, '.product-card'))
)

results = []

cards = driver.find_elements(By.CSS_SELECTOR,".product-card")
for card in cards:
    title = card.find_element(By.CSS_SELECTOR,".title").text.strip()
    price = card.find_element(By.CSS_SELECTOR,".price-wrapper").text.strip()
    results.append(
        {
        "title":title,
        "price": price,
        }
    )
print(results)

time.sleep(1)
driver.quit()