После ввода пароля я пытаюсь нажать кнопку «Войти», но она не работает. Я пытался войти в систему несколько раз, но по-прежнему сталкиваюсь с той же проблемой.
Я работаю в PyCharm, и мой код приведен ниже:
import time # imports only
from selenium import webdriver
import selenium.webdriver.support.ui as ui
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.common.exceptions import StaleElementReferenceException
url = "https://login.microsoftonline.com/common/oauth2/authorize?client_id=4345a7b9-9a63-4910-a426-35363201d503&response_mode=form_post&response_type=code+id_token&scope=openid+profile&state=OpenIdConnect.AuthenticationProperties%3d1AdipDE7B0zcz7l3OGcmj55gkZHqyGsAQcD9jsMhOrgAxonoajmDyWeQkCY2muJLk8S1Qa8YEe8dMDejbnu-uR4_YMCg2pyjI78kpq6yy6EDxVmY9hi2jsYrD6JXUh5Q&nonce=637029216192157219.OTAzYjExYWItZmNjNC00ZTkwLWI4Y2MtOTg0NmJiN2ZiZTZiMjczNzc4NTItODM2Ni00ZjU4LWFiMGEtMGJhZDM3YTQ3ZGNl&redirect_uri=https%3a%2f%2fwww.office.com%2f&ui_locales=en-US&mkt=en-US&client-request-id=1fe72f73-2884-4e70-b700-05b1832a94b8"
def _init_(url):
# open up the web browser
driver = webdriver.Chrome(executable_path="C:\Webdriver\chromedriver_win32\chromedriver")
driver.maximize_window()
driver.get(url)
return(driver)
driver = _init_(url) # driver function let me show the working opens new window
username = "[email protected]" #my username and pass
password = "xyz"
email_field = driver.find_element_by_xpath("//input[@type='email']").send_keys(username)
next_button = driver.find_element_by_xpath("//input[@type='submit']").click()
wait = WebDriverWait(driver, 10) # first we send username and wait for page to reload
pass_field = driver.find_element_by_xpath("//input[@type='password']").send_keys(password)
submit_button = driver.find_element_by_xpath("//input[@type='submit']")
driver.execute_script("arguments[0].click();",submit_button)
wait=WebDriverWait(driver,10).until(EC.presence_of_element_located(By.XPATH,"//input[@type='submit']"))
Я вижу следующее сообщение об ошибке в консоли:
wait = WebDriverWait (driver, 10) .until (EC.presence_of_element_located (By.XPATH, "// input [@ type = 'submit']")) TypeError: init () принимает 2 позиционных аргумента но 3 были даны
Что мне не хватает?