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

yipeiwu_com5年前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中的exec、eval使用实例

通过exec可以执行动态Python代码,类似Javascript的eval功能;而Python中的eval函数可以计算Python表达式,并返回结果(exec不返回结果,print(e...

解决python3 网络请求路径包含中文的问题

在爬一个网站的时候,端点包含中文浏览器是可以自动解决这个转换的,在代码中就需要处理一下了。 请求过程的异常如下: self._output(request.encode('ascii...

在Python的web框架中编写创建日志的程序的教程

在Python的web框架中编写创建日志的程序的教程

在Web开发中,后端代码写起来其实是相当容易的。 例如,我们编写一个REST API,用于创建一个Blog: @api @post('/api/blogs') def api_cre...

python ChainMap 合并字典的实现步骤

字典是Python语言中唯一的映射类型。 映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关系,通常被认为是可变的哈希表。 字典对象是可变的,它是一个容器类...

详谈python http长连接客户端

背景: 线上机器,需要过滤access日志,发送给另外一个api 期初是单进程,效率太低,改为多进程发送后,查看日志中偶尔会出现异常错误(忘记截图了。。。) 总之就是端口不够用了报错 原...