5、Selenium+Python自动登录163邮箱发送邮件
1、Selenium实现自动化,需要定位元素,以下查看163邮箱的登录元素
(1)登录(定位到登录框,登录框是一个iframe,如果没有定位到iframe,是无法定位到账号框与密码框)

定位到邮箱框(name='email')

定位到密码框(name='password')

定位到登录按钮(id="dologin")

2、代码实现
#coding=utf-8 import time
from selenium import webdriver broswer = webdriver.Ie() broswer.get("https://mail.163.com/") # 输入指定网址 broswer.switch_to.frame('x-URS-iframe') # 登录框是一个iFrame,无法没有定位到该点,则无法找到账号与密码文本框 broswer.find_element_by_name('email').clear() # 清除账号框信息 broswer.find_element_by_name('email').send_keys('nancywangdl') # 定位到账号框 broswer.find_element_by_name('password').send_keys('密码') # 定位到密码框 login = broswer.find_element_by_css_selector("#dologin") # 定位到登录按钮 login.click() # 点击“登录”按钮 time.sleep(6) # 等待6秒 broswer.find_element_by_id("_mail_component_70_70").click() # 点击“写信”按钮 time.sleep(2) broswer.find_element_by_class_name('nui-editableAddr-ipt').send_keys('1095936979@qq.com') # 输入收件人邮箱 broswer.find_element_by_xpath("//input[@class='nui-ipt-input' and @type='text' and @maxlength='256']").send_keys(u'测试') xpath = broswer.find_element_by_xpath("//div[@class='APP-editor-edtr']/iframe") broswer.switch_to_frame(xpath) broswer.find_element_by_xpath("//body[@class='nui-scroll' and @contenteditable='true']").send_keys(u'这是一个自动化测试邮件') broswer.switch_to_default_content() broswer.find_element_by_xpath("//div[@class='nui-toolbar-item']/div/span[2]").click() time.sleep(3) broswer.quit() # 退出浏览器
5、Selenium+Python自动登录163邮箱发送邮件的更多相关文章
- [Python爬虫] Selenium实现自动登录163邮箱和Locating Elements介绍
前三篇文章介绍了安装过程和通过Selenium实现访问Firefox浏览器并自动搜索"Eastmount"关键字及截图的功能.而这篇文章主要简单介绍如何实现自动登录163邮箱,同时 ...
- 【webdriver自动化】使用unittest实现自动登录163邮箱然后新建一个联系人
#练习:登录163邮箱然后新建一个联系人 import unittest import time from selenium import webdriver from selenium.webdri ...
- python练习-使用163邮箱发送邮件
具体代码如下> #密码等敏感信息已经用****替换 import smtplib,sys from email.mime.text import MIMEText from email.head ...
- python webdriver 登录163邮箱发邮件加附件, 外加数据和程序分离,配置文件的方式
配置文件:UiObjectMapSendMap.ini用来存放配置信息 GetOptionSendMail.py 用来读取配信息 #encoding=utf-8from selenium.webdri ...
- python中使用163邮箱发送邮件一直报错的问题,谁能解决(已经各种百度完了,没能解决问题)
1.报错如下: 2.代码如下:
- python selenium模拟登录163邮箱和QQ空间
最近在看python网络爬虫,于是我想自己写一个邮箱和QQ空间的自动登录的小程序, 下面以登录163邮箱和QQ空间和为例: 了解到在Web应用中经常会遇到frame/iframe 表单嵌套页面的应用, ...
- selenium数据驱动模式实现163邮箱的登录及添加联系人自动化操作
项目结构如下: 要求python3.0 selenium3.0 下面是代码: appModubles:addContactPersonActtion.py和LoginAction.py addCont ...
- Python Django 配置QQ邮箱发送邮件
一.实验环境 Python2.7 + Django1.10.0 二.获取QQ邮箱授权码 1.什么是授权码? 授权码是QQ邮箱推出的,用于登录第三方客户端的专用密码. 适用于登录以下服务:POP3/IM ...
- Linux下用mail 命令给163邮箱发送邮件!
linux上的邮件客户端比较多,找一个平时用的比较多mail命令来试试!! 环境 :centos7: 注意 : 服务器必须得有外网才行,qq邮箱作为在linux上的发送端邮箱,经过测试 163 和qq ...
随机推荐
- 0731 #Django rest framework
FBV:Function base viewsdef index(request): if request.method == 'POST': return HTTPrespons ...
- Apache的order、allow、deny
Allow和Deny可以用于apache的conf文件或者.htaccess文件中(配合Directory, Location, Files等),用来控制目录和文件的访问授权. 所以,最常用的是:Or ...
- mysql下merge分表
1.merge简介分表就是把N条记录的表,分成若干个分表,各个分表记录的总和仍为N. 分表的方法有很多,用merge来分表,是最简单的一种方式.merge是mysql的一种存储引擎,它把一组MyISA ...
- 三、golang时间、流程控、函数
一.本篇内容 1.string和strconv使用 2.go中的时间和日期类型 3.流程控制 4.函数讲解 二.string和strconv使用 1. string.HasPrefix(s trin ...
- PHP实现链式操作
什么是链式操作 我们经常会在一些应用框架中看到如下代码: $db = new Database; $db->where('cid = 9')->order('aid desc')-> ...
- Kubernetes Horizontal Pod Autoscaler
非常牛逼的技术,目前最新的版本支持众多的Feature HPA功能需要Heapster收集的CPU.内存等数据作为支撑 配置示例: apiVersion: autoscaling/v2beta1 ki ...
- 【codevs2333】&【BZOJ2002】弹飞绵羊[HNOI2010](分块)
我其实是在codevs上看到它的题号后才去做这道题的...2333... 题目传送门:codevs:http://codevs.cn/problem/2333/ bzoj:http://www.lyd ...
- EntityFramework 学习 一 Colored Entity in Entity Framework 5.0
You can change the color of an entity in the designer so that it would be easy to see related groups ...
- TCP的三个接收队列
之前对于TCP接收过程中的三个队列的关系之前没搞清楚. 这几天,在同事邱的帮助下,终于把关系理清了,故特此做个笔记. 一.在软中断中加入数据包 tcp_v4_rcv()函数是tcp层收包的入口. in ...
- Spring 入门base
提起Spring,就会想到企业级框架这个词 企业级系统: 1.大规模:用户数量多,数据规模庞大,数据众多 2.性能和安全性要求更高 3.业务复杂 4.灵活应变 我觉得先了解一下Spring的地位和他的 ...