python selenium实现发送带附件的邮件代码实例


Posted in Python onDecember 10, 2019

这篇文章主要介绍了python selenium实现发送带附件的邮件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

163邮件登录首页

登录成功断言是否有退出按钮

点击退出退出登录

代码如下

from selenium import webdriver
import unittest
import time

class VisitSogouByChrome(unittest.TestCase):

  def setUp(self):
    # 启动Chrome浏览器
    self.driver = webdriver.Chrome(executable_path = "e:\\chromedriver.exe")


  def test_sendEmail(self):
    # 访问163邮箱的首页
    self.driver.get("https://mail.163.com/")
    # 打印当前网页的网址
    self.driver.maximize_window()
    #点击密码登录
    self.pwd_link = self.driver.find_element_by_xpath("//a[text()='密码登录']")
    self.pwd_link.click()
    #找到登录框的iframe
    login_input_iframe = self.driver.find_element_by_xpath("//iframe[contains(@id,'x-URS-iframe')]")
    # 切换进登录框的iframe
    self.driver.switch_to.frame(login_input_iframe)

    self.user_name = self.driver.find_element_by_xpath("//input[@name='email']")
    self.pass_wd = self.driver.find_element_by_xpath("//input[@name = 'password']")
    self.login_button =self.driver.find_element_by_xpath("//a[@id ='dologin']")

    #清空用户名
    self.user_name.clear()
    self.user_name.send_keys("ff_gaofeng")
    self.pass_wd.send_keys("XXX")
    self.login_button.click()
    time.sleep(5)

    #点击“写信”button
    self.writer_button = self.driver.find_element_by_xpath("//span[text()='写 信']")
    self.writer_button.click()
    time.sleep(2)

    #输入收件人的邮箱
    self.addressee = self.driver.find_element_by_xpath("//input[contains(@aria-label,'收件人地址输入框')]")
    self.addressee.send_keys('ff_gaofeng@163.com')

    #输入邮件主题
    self.title = self.driver.find_element_by_xpath("//input[contains(@id,'subjectInput')]")
    self.title.send_keys('发给自己的一封邮件')

    #上传文件
    self.uppload_file_link = self.driver.find_element_by_xpath("//input[@type = 'file']")
    #self.uppload_file_link = self.driver.find_element_by_xpath("//a[text()='添加附件']")
    self.uppload_file_link.send_keys(r"D:\1.py")
    time.sleep(5)

    # 切换进入boby的iframe
    #boby_iframe = self.driver.find_element_by_xpath("//iframe[@class='APP-editor-iframe']")
    #self.driver.switch_to.frame(boby_iframe)
    self.driver.switch_to.frame(self.driver.find_element_by_xpath("//iframe[@class='APP-editor-iframe']"))

    # 输入邮件正文内容
    self.body = self.driver.find_element_by_xpath("html/body")
    self.body.send_keys("实现写邮件,上传附件的功能自动化用了。。。。。。。。")
    self.driver.switch_to.default_content()

    #点击“发送”按钮
    self.send_email = self.driver.find_element_by_xpath("//header//span[text()='发送']")
    self.send_email.click()



  def tearDown(self):
    # 退出IE浏览器
    self.driver.quit()

if __name__ == '__main__':
  unittest.main()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
linux系统使用python获取内存使用信息脚本分享
Jan 15 Python
Django中几种重定向方法
Apr 28 Python
浅析Python中return和finally共同挖的坑
Aug 18 Python
浅析Python3爬虫登录模拟
Feb 07 Python
用pandas按列合并两个文件的实例
Apr 12 Python
python and or用法详解
Jun 26 Python
jenkins配置python脚本定时任务过程图解
Oct 29 Python
np.random.seed() 的使用详解
Jan 14 Python
Django实现从数据库中获取到的数据转换为dict
Mar 27 Python
python 图像判断,清晰度(明暗),彩色与黑白实例
Jun 04 Python
Python干货实战之八音符酱小游戏全过程详解
Oct 24 Python
Python tensorflow卷积神经Inception V3网络结构
May 06 Python
opencv设置采集视频分辨率方式
Dec 10 #Python
django框架forms组件用法实例详解
Dec 10 #Python
django框架auth模块用法实例详解
Dec 10 #Python
django框架中间件原理与用法详解
Dec 10 #Python
Django2 连接MySQL及model测试实例分析
Dec 10 #Python
python实现将视频按帧读取到自定义目录
Dec 10 #Python
django连接mysql数据库及建表操作实例详解
Dec 10 #Python
You might like
几款免费开源的不用数据库的php的cms
2010/12/19 PHP
php mysql 判断update之后是否更新了的方法
2012/01/10 PHP
linux环境apache多端口配置虚拟主机的方法深入介绍
2013/06/09 PHP
PHP错误Warning:mysql_query()解决方法
2015/10/24 PHP
Yii实现Command任务处理的方法详解
2016/07/14 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
浅谈PHPANALYSIS提取关键字
2019/03/08 PHP
不错的一个日期输入 动态
2006/11/06 Javascript
javascript下4个跨浏览器必备的函数
2010/03/07 Javascript
javascript预加载图片、css、js的方法示例介绍
2013/10/14 Javascript
JS实现侧悬浮浮动实例代码
2013/11/29 Javascript
Node.js中创建和管理外部进程详解
2014/08/16 Javascript
ReactNative-JS 调用原生方法实例代码
2016/10/08 Javascript
理解JavaScript原型链
2016/10/25 Javascript
JavaScript实现的CRC32函数示例
2016/11/23 Javascript
自定义PC微信扫码登录样式写法
2017/12/12 Javascript
详解在Angular4中使用ng2-baidu-map的方法
2019/06/19 Javascript
Electron vue的使用教程图文详解
2019/07/05 Javascript
JS实现简单移动端鼠标拖拽
2020/07/23 Javascript
在vue项目中 实现定义全局变量 全局函数操作
2020/10/26 Javascript
Python多进程机制实例详解
2015/07/02 Python
python开发之thread线程基础实例入门
2015/11/11 Python
python生成lmdb格式的文件实例
2018/11/08 Python
对python中的argv和argc使用详解
2018/12/15 Python
python模拟菜刀反弹shell绕过限制【推荐】
2019/06/25 Python
opencv 图像滤波(均值,方框,高斯,中值)
2020/07/08 Python
倩碧美国官网:Clinique美国
2016/07/20 全球购物
维多利亚的秘密阿联酋官网:Victoria’s Secret阿联酋
2019/12/07 全球购物
可靠的数据流传输TCP
2016/03/15 面试题
建筑行业的大学生自我评价
2013/12/08 职场文书
大二学期个人自我评价
2014/01/13 职场文书
遵纪守法演讲稿
2014/05/23 职场文书
MBA推荐信怎么写
2015/03/25 职场文书
2019最新劳动仲裁申请书!
2019/07/08 职场文书
《最后一头战象》读后感:动物也有感情
2020/01/02 职场文书
MySQL聚簇索引和非聚簇索引的区别详情
2022/06/14 MySQL