login ke akun email Google menggunakan Python Selenium webdrive

Saya perlu masuk ke akun email Google menggunakan Selenium dengan Python.

ini kode saya

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

driver = webdriver.Firefox()
driver.get("https://login.yahoo.com")

print driver.current_url

logintxt = driver.find_element_by_name("username")
logintxt.send_keys("email")

pwdtxt = driver.find_element_by_name("passwd")
pwdtxt.send_keys("pass")



button = driver.find_element_by_id("login-signin")
button.click()
driver.get("https://mail.yahoo.com")
print driver.current_url

tetapi ketika saya mencetak url saat ini, saya selalu diberi halaman login, yang berarti tidak login.

ada ide tentang cara memperbaikinya? Saya menggunakan Centos 6 dengan python 2.6


person MedYasser.alkahf    schedule 11.08.2015    source sumber


Jawaban (1)


Tunggu hingga (menggunakan WebDriverWait) mengarahkan Anda ke halaman utama yahoo setelah login berhasil sebelum menavigasi ke kotak email Yahoo:

from selenium.webdriver.support.wait import WebDriverWait

button = driver.find_element_by_id("login-signin")
button.click()

# give it time to log in
wait = WebDriverWait(driver, 10)
wait.until(lambda driver: driver.current_url == "https://www.yahoo.com/")

driver.get("https://mail.yahoo.com")
person alecxe    schedule 11.08.2015