python+selenium实现163邮箱自动登陆的方法

yipeiwu_com6年前Python基础

本文介绍了

让我们先来预览一下代码运行效果吧:

首先分析163邮箱登陆页面的网页结构(按F12或单击鼠标右键选择审查元素)

1、定位到登陆框(注意登录框是一个iframe,如果不定位到iframe的话是无法找到之后的邮箱地址框和密码输入框的)

2、定位到邮箱地址框(name='email')

3、定位到密码输入框(name='password')

4、定位到登陆按钮(id='dologin')

5、分析完毕,现在就可以写代码实现163邮箱的自动登陆啦(附有代码的详细解析!)

#coding:utf-8
from selenium import webdriver
import time
def login():
  dr = webdriver.Chrome()
  #打开登陆163邮箱的网页
  dr.get('http://mail.163.com/')

  #将浏览器窗口最大化
  dr.maximize_window()

  #休息五分钟等待网页加载完毕
  time.sleep(5)

  #找到邮箱账号登录框对应的iframe
  dr.switch_to.frame('x-URS-iframe')

  #找到邮箱账号输入框
  email = dr.find_element_by_name('email')

  #将自己的邮箱地址输入到邮箱账号框中
  email.send_keys('chimuyhs')

  #找到密码输入框
  password = dr.find_element_by_name('password')

  #输入自己的邮箱密码
  password.send_keys('xxxxxx')

  #找到登陆按钮
  login_btn = dr.find_element_by_id('dologin')

  #点击登陆按钮
  login_btn.click()

  #等待10秒看是否登陆成功
  time.sleep(10)
if __name__ == '__main__':

  login()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python通过post提交数据的方法

本文实例讲述了python通过post提交数据的方法。分享给大家供大家参考。具体实现方法如下: # -*- coding: cp936 -*- import urllib2 impo...

python3读取MySQL-Front的MYSQL密码

前言 同样的套路又来了,继续尝试从配置文件中读取敏感的信息,这次轮到的是MySQL-Front。 MySQL-Front就一款开源的mysql管理工具,官方网站http://www.my...

python基于phantomjs实现导入图片

基于的phantomjs的自动化,会出现 1.flash不支持 2.部分基于view的按钮点不到,部分按钮是基于flash的(尤其是在于上传按钮) browser.find_ele...

python 输入一个数n,求n个数求乘或求和的实例

求和 try: while True: n=input() s=1 for x in raw_input().split(): s=s+int(x) prin...

Django model反向关联名称的方法

如果你在 ForeignKey或 ManyToManyField字段上使用 related_name属性,你必须总是为该字段指定一个唯一的反向名称。但在抽象基类上这样做就会引发一个很严重...