python selenium模拟登陆163邮箱和QQ空间

  最近在看python网络爬虫,因而我想本身写一个邮箱和QQ空间的自动登陆的小程序,python

下面以登陆163邮箱和QQ空间和为例:web

  了解到在Web应用中常常会遇到frame/iframe 表单嵌套页面的应用,WebDriver 只能在一个页面上对元素识别与定位,对于frame/iframe 表单内嵌页面上的元素没法直接定位。这时就须要经过switch_to.frame()方法将当前定位的主体切换为frame/iframe 表单的内嵌页面中chrome

# -*- coding: utf-8 -*-
"""
Created on Fri Aug 31 2018小程序


@author: chenlinlab
"""
from selenium import webdriver
from time import sleep
options = webdriver.ChromeOptions()
options.add_argument('disable-infobars')
driver = webdriver.Chrome(chrome_options=options)
driver.maximize_window()网络

#163 email login
driver.get('http://mail.163.com/')
sleep(1)
driver.switch_to.frame("x-URS-iframe")
driver.find_element_by_name("email").clear()
driver.find_element_by_name("email").send_keys('Your163EmailName')
driver.find_element_by_name("password").clear()
driver.find_element_by_name("password").send_keys('Your163EmailPassword')
driver.find_element_by_id("dologin").click()spa

sleep(10)3d

#qq zone login
driver.get('http://qzone.qq.com')
sleep(1)
driver.switch_to_frame('login_frame')
driver.find_element_by_id('switcher_plogin').click()
driver.find_element_by_id('u').clear()
driver.find_element_by_id('u').send_keys('YourQQ')
driver.find_element_by_id('p').clear()
driver.find_element_by_id('p').send_keys('YourQQPassword')
driver.find_element_by_id('login_button').click()blog