Python Selenium登录网易邮箱
Python Selenium登录网易邮箱
代码
登录忘记邮箱需要切frame,使用显示等待加载十秒等组件加载出来,然后输入账号密码进行登录,
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait# 指定ChromeDriver的路径
driver = webdriver.Chrome()driver.get('https://email.163.com/')# 切换到登录iframe(网易邮箱登录表单在iframe中)
login_frame = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, "iframe[id^='x-URS-iframe']"))
)
driver.switch_to.frame(login_frame)
print("进入frame成功!")# 通过CSS_SELECTOR定位手机号码输入框
# 显示等待输入框加载出来
phoneNumInput = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, "input[placeholder='邮箱账号或手机号码']"))# EC.presence_of_element_located((By.CLASS_NAME, "mail-input-inner"))
)
phoneNumInput.send_keys('输入真实的手机号')
print("账号输入成功!")# 通过CSS_SELECTOR定位密码输入框
# 显示等待输入框加载出来
pwdInput = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.CSS_SELECTOR, "input[placeholder='输入密码']"))
)
pwdInput.send_keys('输入真实的密码')
print("密码输入成功!")# 通过ID定位免登录单选框
# 显示等待输入框加载出来
noLogiBtn = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "un-login"))
)
noLogiBtn.click()
print("勾选免登录成功!")# 通过ID定位按钮
# 显示等待按钮加载出来
loginButton = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "dologin"))
)
loginButton.click()input("按 Enter 键退出...")# 最后记得关闭浏览器
driver.quit()