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

这篇文章主要介绍了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()

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

(0)

相关推荐

  • 基于python的selenium两种文件上传操作实现详解

    方法一.input标签上传 如果是input标签,可以直接输入路径,那么可以直接调用send_keys输入路径,这里不做过多赘述,前文有相关操作方法. 方法二.非input标签上传 这种上传方式需要借助第三方工具,主要有以下三种情况: 1.AutoIt 去调用它生成的au3或者exe格式的文件 2.SendKeys第三方库(目前只支持到2.7版本) 网址:https://pypi.python.org/pypi/SendKeys/ 3.Python的pywin32库,通过识别对话框句柄来进行操作

  • 详解pyinstaller selenium python3 chrome打包问题

    今天打包selenium一个简单的请求,打完包本机运行exe没有问题,换台机器就闪退,非常蛋疼找了半天原因. 下面简述下,防止踩坑,如果闪退十有八九是浏览器版本跟浏览器插件对不上. 首先安装pyinstaller pip install pyinstaller 然后进入要打包的py文件目录 然后pyinstaller tomcat.py 这种打包方式有很多文件,不太美观 第二种打包方式:pyinstaller -F tomcat.py 下面就是重点,我之前忘记把浏览器插件复制到.exe文件目录所

  • Python SELENIUM上传文件或图片实现过程

    逛网站的时候经常会遇到需要上传图片的操作,这里主要来说下selenium操作上传文件的操作. 前提条件:定位的元素必须是type 属性是file类型.即type="file",如下图: 详细用法: 参考代码: from selenium import webdriver import time driver = webdriver.Chrome() def test_open_page(): '''打开界面''' driver.maximize_window() driver.get(

  • python3 selenium自动化 frame表单嵌套的切换方法

    在web自动化测试中,测试工程师经常会碰到frame表单嵌套结构,直接定位会报错,我们需要切换表单后才能成功定位. 我拿QQ邮箱登录来作为例子说下frame怎么切换. qq邮箱页面按F12可以看到以下信息: 表单的信息如下: <iframe id="login_frame" name="login_frame" height="100%" scrolling="no" width="100%" fra

  • Python进阶之使用selenium爬取淘宝商品信息功能示例

    本文实例讲述了Python进阶之使用selenium爬取淘宝商品信息功能.分享给大家供大家参考,具体如下: # encoding=utf-8 __author__ = 'Jonny' __location__ = '西安' __date__ = '2018-05-14' ''' 需要的基本开发库文件: requests,pymongo,pyquery,selenium 开发流程: 搜索关键字:利用selenium驱动浏览器搜索关键字,得到查询后的商品列表 分析页码并翻页:得到商品页码数,模拟翻页

  • python+selenium select下拉选择框定位处理方法

    一.前言 总结一下python+selenium select下拉选择框定位处理的两种方式,以备后续使用时查询: 二.直接定位(XPath) 使用Firebug找到需要定位到的元素,直接右键复制XPath,使用find_element_by_xpath定位: driver = webdriver.Firefox() driver.get("https://www.baidu.com/") driver.find_element_by_xpath().click() 三.间接定位(Sel

  • python selenium 执行完毕关闭chromedriver进程示例

    因为使用多次以后发现进程中出现了很多chromedriver的残留,造成卡顿,所以决定优化一下. 这个问题困扰了楼主很久,百度谷歌查来查去都只有java,后面根据java和selenium结合看找出了python如何执行完把chromedriver进程关闭 Python的话控制chromedriver的开启和关闭的包是Service from selenium.webdriver.chrome.service import Service 创建的时候需要把chromedriver.exe的位置写

  • Python使用selenium + headless chrome获取网页内容的方法示例

    使用python写爬虫时,优选selenium,由于PhantomJS因内部原因已经停止更新,最新版的selenium已经使用headless chrome替换掉了PhantomJS,所以建议将selenium更新到最新版,使用selenium + headless chrome 准备工作: 安装chrome.chrome driver.selenium 一.安装chrome 配置yum下载源,在目录/etc/yum.repos.d/下新建文件google-chrome.repo > cd /e

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

    这篇文章主要介绍了python selenium实现发送带附件的邮件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 163邮件登录首页 登录成功断言是否有退出按钮 点击退出退出登录 代码如下 from selenium import webdriver import unittest import time class VisitSogouByChrome(unittest.TestCase): def setUp(self): # 启

  • python实现发送带附件的邮件代码分享

    具体代码如下: from django.template import loader from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.header import Header import smtplib import traceback class SendEmail(object):     """     发送html邮件    

  • Java实现批量发送带附件的邮件代码

    目录 前言 实体类(注意注释) 实现类 方法中调用,详情如下: 总结 前言 新功能上线时要经常发包到测试或生产服务器进行模块部署,但由于安全限制只能通过邮件传输小于10M的附件这种方式把jar包上传到服务器.所以往往要发送几十个邮件手动发送比较麻烦,偷懒写了个粘贴即用的Demo,如有不足,请多指教! 实体类(注意注释) 代码详情如下: package Email; /* * 参数实体类 * */ public class EmailParameter { //发信邮箱 private Strin

  • smtp发送带附件的邮件代码分享

    该方式直接保存为HTML文件,也可以是文本文件,其它格式效果不是很好 复制代码 代码如下: MailMessage mmsg = new MailMessage();     mmsg.Subject = "邮件标题";     mmsg.Body = "邮件内容";     mmsg.To.Add("accept@qq.com");//接收邮箱     byte[] bytes = System.Text.Encoding.Default.Ge

  • 如何用ASP发送带附件的邮件?

    如何用ASP发送带附件的邮件?<% Option Explicit Dim objMail Set objMail = Server.CreateObject("CDONTS.NewMail") objMail.From = "liyanbing@163.net " objMail.Subject = "闪亮日子之星河影动" objMail.AttachFile("s:\flashdays\images\win.jpg"

  • 用vbs发送带附件的邮件

    function Send_mail(You_Account,You_Password,Send_Email,Send_Email2,Send_Topic,Send_Body,Send_Attachment)  'code by NetPatch 'VBS发送邮件参数说明 'You_Account:你的邮件帐号 'You_Password:你的邮件密码 'Send_Email: 主要邮件地址 'Send_Email2: 备用邮件地址 'Send_Topic: 邮件主题 'Send_Body:  

  • java中javamail发送带附件的邮件实现方法

    本文实例讲述了java中javamail发送带附件的邮件实现方法.分享给大家供大家参考.具体分析如下: JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口.它是Sun发布的用来处理email的API.它可以方便地执行一些常用的邮件传输,JavaMail是可选包,因此如果需要使用的话你需要首先从java官网上下载.目前最新版本是JavaMail1.5.0,下面我们来看看javamail发送带附件的邮件实例 mail.java 代码: 复制代码 代码如下: package mail;

  • Codeigniter实现发送带附件的邮件

    本文实例讲述了Codeigniter实现发送带附件的邮件的方法.分享给大家供大家参考.具体分析如下: attach() 方法允许你的发邮件时带上附件,下面是演示代码 复制代码 代码如下: $this->load->library('email'); $this->email->from('w3@w3mentor.com', 'W3M'); $this->email->subject('Email Test with attachment'); $this->ema

  • php简单实现发送带附件的邮件

    本文实例讲述了php简单实现发送带附件的邮件.分享给大家供大家参考.具体如下: 下面是静态html代码: <html> <head> <title>带附件的邮件发送</title> </head> <body> <form method="post" name="form1" action="sendmail.php" ENCTYPE="multipart/f

  • C#使用smtp发送带附件的邮件实现方法

    本文实例讲述了C#使用smtp发送带附件的邮件实现方法.可直接将string类型结果保存为附件.分享给大家供大家参考.具体分析如下: 该方式直接保存为HTML文件,也可以是文本文件,其它格式效果不是很好 复制代码 代码如下: MailMessage mmsg = new MailMessage(); mmsg.Subject = "邮件标题"; mmsg.Body = "邮件内容"; mmsg.To.Add("accept@qq.com");//

随机推荐