2017-01-06 3 views
1

Ich versuche zu automatisieren, meine Telefonrechnung von der Trägerwebsite zu lesen. www.fido.caPython Selen auf AngularJs Website

Allerdings ist die Website mit angularjs gebaut und ich kann das Element nicht mit Python und Selen-Webdriver finden. Bitte lesen Sie unten die Codes, die ich ausprobiert habe.

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']"))) 

Es gibt selenium.common.exceptions.TimeoutException: Nachricht:

Hinweis: Ich habe das Element von dem vorderen Ende sehen, aber keine Ahnung, warum WebDriver kann es nicht sehen.

+0

Es sieht so aus, als ob Sie sich nicht anmelden. Oder holt der Webdriver Ihre aktuelle Firefox-Sitzung? –

+0

Ja, ich versuche, die Region zu umgehen, wählen Sie zuerst Modal Pop-Up. Daran habe ich gerade festgemacht. –

Antwort

0

Wenn Sie zu einer Seite navigieren, sehen Sie das Overlay "Willkommen bei Fido!" Bildschirm, der das gewünschte Element unsichtbar macht - daher der Timeout-Fehler.

Behandeln Sie den Bildschirm, indem Sie eine Region auswählen und auf "Fortfahren" oder "X" (Schließen) klicken.

+0

Das versuche ich, indem ich darauf warte, das 'BC'-Element für mich auszuwählen. Aber Python kann dieses Element nicht sehen. Ich weiß nicht warum. –