0

I am trying to click through a form on https://www.autozone.com

from selenium import webdriver
from selenium.webdriver import DesiredCapabilities
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC

URL = "https://www.autozone.com/"


caps = DesiredCapabilities().CHROME
caps["pageLoadStrategy"] = "eager"

driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()))
waitDriver = WebDriverWait(driver, 10)
driver.get(URL)

add_vehicle_button = waitDriver.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button[data-testid='deskTopVehicle-menu-lg']")))
add_vehicle_button.click()

waitDriver.until(EC.element_to_be_clickable((By.ID, "yearheader"))).click()
year_button = waitDriver.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button[data-testid='yearheader-dropdown-list-item-1']")))
year_button.click()

waitDriver.until(EC.element_to_be_clickable((By.ID, "makeheader"))).click()
make_button = waitDriver.until(EC.element_to_be_clickable((By.CSS_SELECTOR, "button[data-testid='makeheader-dropdown-list-item-1']")))
make_button.click()

When running the program after year_button.click() a browser error is thrown and the popup disappears

framework-92798cb7dae0e0c5.js:10 TypeError: Cannot read properties of null (reading 'title')
    at ag (1479-2923fb31debee947.js:1:20112)
    at fs (framework-92798cb7dae0e0c5.js:10:59098)
    at f1 (framework-92798cb7dae0e0c5.js:10:68616)
    at i (framework-92798cb7dae0e0c5.js:10:112207)
    at hr (framework-92798cb7dae0e0c5.js:10:98463)
    at hp (framework-92798cb7dae0e0c5.js:10:98391)
    at ho (framework-92798cb7dae0e0c5.js:10:98254)
    at hg (framework-92798cb7dae0e0c5.js:10:95233)
    at framework-92798cb7dae0e0c5.js:10:45040
    at b.unstable_runWithPriority (framework-92798cb7dae0e0c5.js:24:9736)
gi @ framework-92798cb7dae0e0c5.js:10
f.componentDidCatch.c.callback @ framework-92798cb7dae0e0c5.js:10
eK @ framework-92798cb7dae0e0c5.js:10
gp @ framework-92798cb7dae0e0c5.js:10
hu @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
ht @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
aM @ framework-92798cb7dae0e0c5.js:10
bR @ framework-92798cb7dae0e0c5.js:10
main-3fe83d5d1863abe4.js:1          GET https://www.autozone.com/images/icon-store-selected-t.svg 403
(anonymous) @ main-3fe83d5d1863abe4.js:1
f @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
updateHead @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
hz @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
hw @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
aM @ framework-92798cb7dae0e0c5.js:10
bR @ framework-92798cb7dae0e0c5.js:10
icon-oops.svg:1          GET https://www.autozone.com/images/icon-oops.svg 403
Image (async)
A @ framework-92798cb7dae0e0c5.js:10
gf @ framework-92798cb7dae0e0c5.js:10
hs @ framework-92798cb7dae0e0c5.js:10
hr @ framework-92798cb7dae0e0c5.js:10
hp @ framework-92798cb7dae0e0c5.js:10
ho @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
aM @ framework-92798cb7dae0e0c5.js:10
bR @ framework-92798cb7dae0e0c5.js:10
az_locator.svg:1          GET https://www.autozone.com/cdn/icons/az_icons/az_locator.svg 403
Image (async)
A @ framework-92798cb7dae0e0c5.js:10
gy @ framework-92798cb7dae0e0c5.js:10
hu @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
ht @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
hb @ framework-92798cb7dae0e0c5.js:10
fQ @ framework-92798cb7dae0e0c5.js:10
m.tagName.j.current.g.root @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
az-box.svg:1          GET https://www.autozone.com/images/footer/az-box.svg 403
Image (async)
A @ framework-92798cb7dae0e0c5.js:10
gy @ framework-92798cb7dae0e0c5.js:10
hu @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
ht @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
hb @ framework-92798cb7dae0e0c5.js:10
fQ @ framework-92798cb7dae0e0c5.js:10
m.tagName.j.current.g.root @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
az-compose.svg:1          GET https://www.autozone.com/images/footer/az-compose.svg 403
Image (async)
A @ framework-92798cb7dae0e0c5.js:10
gy @ framework-92798cb7dae0e0c5.js:10
hu @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
ht @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
hb @ framework-92798cb7dae0e0c5.js:10
fQ @ framework-92798cb7dae0e0c5.js:10
m.tagName.j.current.g.root @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
new-facebook.svg:1          GET https://www.autozone.com/images/socialmedia/new-facebook.svg 403
Image (async)
A @ framework-92798cb7dae0e0c5.js:10
gy @ framework-92798cb7dae0e0c5.js:10
hu @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
ht @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
hb @ framework-92798cb7dae0e0c5.js:10
fQ @ framework-92798cb7dae0e0c5.js:10
m.tagName.j.current.g.root @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
new-twitter.svg:1          GET https://www.autozone.com/images/socialmedia/new-twitter.svg 403
Image (async)
A @ framework-92798cb7dae0e0c5.js:10
gy @ framework-92798cb7dae0e0c5.js:10
hu @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
ht @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
hb @ framework-92798cb7dae0e0c5.js:10
fQ @ framework-92798cb7dae0e0c5.js:10
m.tagName.j.current.g.root @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
new-you-tube.svg:1          GET https://www.autozone.com/images/socialmedia/new-you-tube.svg 403
Image (async)
A @ framework-92798cb7dae0e0c5.js:10
gy @ framework-92798cb7dae0e0c5.js:10
hu @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
ht @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
hb @ framework-92798cb7dae0e0c5.js:10
fQ @ framework-92798cb7dae0e0c5.js:10
m.tagName.j.current.g.root @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
new-Instagram.svg:1          GET https://www.autozone.com/images/socialmedia/new-Instagram.svg 403
Image (async)
A @ framework-92798cb7dae0e0c5.js:10
gy @ framework-92798cb7dae0e0c5.js:10
hu @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
ht @ framework-92798cb7dae0e0c5.js:10
hg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
eo @ framework-92798cb7dae0e0c5.js:10
er @ framework-92798cb7dae0e0c5.js:10
eq @ framework-92798cb7dae0e0c5.js:10
hb @ framework-92798cb7dae0e0c5.js:10
fQ @ framework-92798cb7dae0e0c5.js:10
m.tagName.j.current.g.root @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
(anonymous) @ _app-1cb58c4ab13ffd1d.js:47
main-3fe83d5d1863abe4.js:1          GET https://www.autozone.com/_next/static/chunks/6408-1bd3c80aa85d4b2d.js net::ERR_ABORTED 403
document.querySelector.c.set.e @ main-3fe83d5d1863abe4.js:1
k @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
(anonymous) @ main-3fe83d5d1863abe4.js:1
f @ main-3fe83d5d1863abe4.js:1
loadRoute @ main-3fe83d5d1863abe4.js:1
loadPage @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
prefetch @ main-3fe83d5d1863abe4.js:1
c.<computed> @ main-3fe83d5d1863abe4.js:1
p @ _app-1cb58c4ab13ffd1d.js:47
onMouseEnter @ _app-1cb58c4ab13ffd1d.js:47
aW @ framework-92798cb7dae0e0c5.js:10
a0 @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
df @ framework-92798cb7dae0e0c5.js:10
dg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
aO @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
dm @ framework-92798cb7dae0e0c5.js:10
bU @ framework-92798cb7dae0e0c5.js:10
bT @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
bS @ framework-92798cb7dae0e0c5.js:10
main-3fe83d5d1863abe4.js:1          GET https://www.autozone.com/_next/static/chunks/pages/trackOrder-659e75ad60d846ea.js net::ERR_ABORTED 403
document.querySelector.c.set.e @ main-3fe83d5d1863abe4.js:1
k @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
(anonymous) @ main-3fe83d5d1863abe4.js:1
f @ main-3fe83d5d1863abe4.js:1
loadRoute @ main-3fe83d5d1863abe4.js:1
loadPage @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
Promise.then (async)
c @ main-3fe83d5d1863abe4.js:1
h @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
(anonymous) @ main-3fe83d5d1863abe4.js:1
prefetch @ main-3fe83d5d1863abe4.js:1
c.<computed> @ main-3fe83d5d1863abe4.js:1
p @ _app-1cb58c4ab13ffd1d.js:47
onMouseEnter @ _app-1cb58c4ab13ffd1d.js:47
aW @ framework-92798cb7dae0e0c5.js:10
a0 @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
df @ framework-92798cb7dae0e0c5.js:10
dg @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
aO @ framework-92798cb7dae0e0c5.js:10
(anonymous) @ framework-92798cb7dae0e0c5.js:10
dm @ framework-92798cb7dae0e0c5.js:10
bU @ framework-92798cb7dae0e0c5.js:10
bT @ framework-92798cb7dae0e0c5.js:10
b.unstable_runWithPriority @ framework-92798cb7dae0e0c5.js:24
bS @ framework-92798cb7dae0e0c5.js:10
ruxitagentjs_A27Vfghjqrux_10249220905100923.js:195          GET https://www.autozone.com/_next/static/css/d7f6188d9650e1ef.css 403

This does not happen when I click through the form manually in a browser.
I have no idea why an error would be thrown with the webdriver but not when clicking manually. How can I get to the root problem and fix it?

Update 10/2/2022

I have tried the same code with firefox, and remade the code with the java selenium library with chrome and firefox. Same error, "T.error is null"

2
  • I would give this a try without using the eager pageloadstrategy. (Is there a reason you set that?) Commented Oct 3, 2022 at 17:53
  • I read that it helps the page load quicker, I will try without it. Commented Oct 3, 2022 at 22:55

1 Answer 1

1

Somehow it is working on my end if I add the following lines at the top:

options = webdriver.ChromeOptions()
options.add_argument('--disable-blink-features=AutomationControlled')

Also, you need to adjust the line where you instantiate the driver:

driver = webdriver.Chrome(options=options, service=Service(ChromeDriverManager().install()))
Sign up to request clarification or add additional context in comments.

1 Comment

This makes it work most of the time, still run into issue every now and then. Seems like a combination of your answer and pcalkins' comment make it the most reliable. I will accept this answer and make a new post.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.