zoukankan      html  css  js  c++  java
  • 【Python爬虫】自动登录163邮箱

    selenium自动登录163邮箱

    一、以“https://mail.163.com/” 入口登录

    效果如下:

    代码:

    from selenium import webdriver
    from time import sleep
    
    browser = webdriver.Chrome()
    browser.get("https://mail.163.com/")
    # browser.maximize_window()
    #将扫码登录转化为用户名密码登录
    browser.find_element_by_xpath('//div[@id="lbNormal"]').click()
    #转化登录方式之后,要进入iframe框
    browser.switch_to.frame(browser.find_element_by_xpath('//iframe[starts-with(@id,"x-URS")]'))
    sleep(1)
    
    browser.find_element_by_xpath('//input[@name="email"]').send_keys('xxxxxxx')
    browser.find_element_by_xpath('//input[@name="password"]').send_keys('xxxxxxx')
    browser.find_element_by_xpath('//*[@id="dologin"]').click()
    
    sleep(2)
    print(browser.page_source)
    sleep(3)
    browser.quit()

    二、以“https://email2.163.com/” 入口登录

    以该入口登录不需要将扫码切换为用户名密码登录的操作

    代码:

    from selenium import webdriver
    from time import sleep
    
    browser = webdriver.Chrome()
    browser.get("https://email2.163.com/")
    # browser.maximize_window()
    browser.switch_to.frame(browser.find_element_by_xpath('//iframe[starts-with(@id,"x-URS")]'))
    sleep(1)
    
    browser.find_element_by_xpath('//input[@name="email"]').send_keys('xxxxxx')
    browser.find_element_by_xpath('//input[@name="password"]').send_keys('xxxxx')
    browser.find_element_by_xpath('//*[@id="dologin"]').click()
    
    sleep(2)
    print(browser.page_source)
    sleep(3)
    browser.quit()

    注意点:

    1、登录时要切换到 iframe框中,browser.switch_to.frame(),否则找不到输入框

    2、iframe框的id是动态变化的,要用模糊匹配

    browser.find_element_by_xpath('//iframe[starts-with(@id,"x-URS")]')
  • 相关阅读:
    ie6动态创建iframe无法显示内容的bug
    时间字符串解析
    自定义时间格式转换代码
    MySql存储过程异常处理示例
    解析数字签名的Substring结构
    自动输出类的字段及值
    深复制与浅复制的实现
    ie版本过低提示升级ie的示例
    Web安全攻防TCP/IP安全篇
    不同网段相互通信实验
  • 原文地址:https://www.cnblogs.com/XJT2018/p/11032346.html
Copyright © 2011-2022 走看看