1

I am trying to automate reading my phone bill from the carrier website. www.fido.ca

However, the site is built with angularjs and I can't find the element using python and selenium webdriver. Please see below for the codes I've tried.

driver = webdriver.Firefox()
url = 'https://www.fido.ca/pages/#/login?m=login'
driver.get(url)
wait = WebDriverWait(driver, 10)
wait.until(EC.visibility_of_element_located((By.XPATH, "//a[@id='BC']")))

It returns selenium.common.exceptions.TimeoutException: Message:

Note: I can see the element from the front end, but no idea why webdriver can't see it.

2
  • It looks like you aren't logging in though. Or does the webdriver essentially get your current firefox session? Commented Jan 6, 2017 at 15:56
  • Yes, I am trying to bypass the region select modal pop up first. Stuck at that right now. Commented Jan 6, 2017 at 22:59

1 Answer 1

0

When you navigate to a page, you would see the overlay "Welcome to Fido!" screen which makes your desired element invisible - hence the timeout error.

Handle the screen by selecting a region and clicking "Continue" or "X" (close).

Sign up to request clarification or add additional context in comments.

1 Comment

That is what I am trying to do by waiting to see the 'BC' element for me to select. But Python can't see that element. Don't know why.

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.