python3.6实现126邮箱登录

在这个实例中需要注意的是:iframe的切换,试了好几种都切换不成功,目前这个是成功的实例,希望可以帮助到大家!

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from time import sleep
import unittest

class Login126Main(unittest.TestCase):
def setUp(self) -> None:
self.url = ‘https://m.126.com/
self.username = ‘邮箱地址’
self.userpassword = ‘邮箱密码’
self.driver = webdriver.Firefox()
self.driver.implicitly_wait(30)
self.driver.maximize_window()

def test_login(self):
    driver = self.driver
    driver.get(self.url)
    sleep(5)
    self.driver.find_element_by_id("switchAccountLogin").click()
    sleep(5)
    #切换iframe框架
    #driver.switch_to.frame(driver.find_element_by_xpath('//iframe[starts-with(@id, "x-URS-iframe")]'))
    WebDriverWait(driver, 10).until(
        EC.frame_to_be_available_and_switch_to_it((By.XPATH, '//iframe[starts-with(@id, "x-URS-iframe")]')))

    # 填写用户名
    driver.find_element_by_xpath('//input[@name="email"]').send_keys(self.username)

    # 填写密码
    driver.find_element_by_xpath('//input[@name="password"]').send_keys(self.userpassword)

    # 提交
    driver.find_element_by_xpath('//a[@id="dologin"]').click()
    sleep(10)

    # 验证跳转成功
    self.assertEqual(driver.title, '网易邮箱6.0版', '登录成功')
    print("登录成功")

def tearDown(self) -> None:
    self.driver.quit()

if name == ‘main’:
unittest.main()

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值