#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Created by iFantastic on 2019-05-08
from selenium import webdriver
import time
driver_path = "{chromedriver存放路径}"
base_url = "https://mail.163.com/"
# chrome去除浏览器正在收到自动测试软件控制
option = webdriver.ChromeOptions()
option.add_argument("disable-infobars")
driver = webdriver.Chrome(executable_path=driver_path, options=option)
driver.get(base_url)
driver.maximize_window()
driver.save_screenshot("{登录页面截图存放路径}")
# 定位选择"密码登录"
ele = driver.find_element_by_link_text("密码登录")
print(ele)
ele.click()
# 定位iframe框架
iframe = driver.find_element_by_xpath("//div[@id='loginDiv']/iframe")
# 因为switch_to_frame(),这句话被划上了删除线,原因是这个方法已经out了,之后很有可能会不支持,建议的写法是switch_to.frame()
# 进入iframe框架
driver.switch_to.frame(iframe)
# driver.switch_to.default_content()
# 定位用户名输入框并输入用户名
time.sleep(2)
element_user = driver.find_element_by_xpath("//input[@name='email']")
element_user.clear()
element_user.send_keys("{发件人邮箱地址}")
# 定位密码输入框并输入密码
element_passwd = driver.find_element_by_name("password")
element_passwd.clear()
element_passwd.send_keys("{发件人邮箱密码}")
# 定位登录按钮
login_button = driver.find_element_by_xpath("//*[@id='dologin']")
login_button.click()
# 退出iframe
driver.switch_to.default_content()
time.sleep(3)
driver.save_screenshot("{登录页面截图存放路径}")
# 定位写信按钮
driver.find_element_by_xpath('//span[text()="写 信"]').click()
# 定位收件人输入框
driver.find_element_by_xpath('//input[@class="nui-editableAddr-ipt"]')
driver.find_element_by_xpath('//input[@class="nui-editableAddr-ipt"]').send_keys("{收件人邮箱地址}")
time.sleep(1)
# 定位主题输入框
driver.find_element_by_css_selector("[maxlength='256']")
driver.find_element_by_css_selector("[maxlength='256']").send_keys("selenium auto test测试邮件")
# 定位"上传附件"
time.sleep(4)
driver.find_element_by_xpath("//input[@type='file' and @class='O0']").send_keys("{附件存放地址}")
time.sleep(4)
# 定位邮件正文
driver.switch_to.frame(driver.find_element_by_xpath("//iframe[@class='APP-editor-iframe']"))
driver.find_element_by_class_name("nui-scroll").clear()
driver.find_element_by_class_name("nui-scroll").send_keys("Python3 + selenium自动化测试学习")
time.sleep(1)
driver.save_screenshot("{邮件页面截图存放路径}")
driver.switch_to.default_content()
time.sleep(2)
# 定位"发送"按钮
driver.find_element_by_xpath("//span[text()='发送']").click()
time.sleep(3)
driver.close()
selenium-163邮箱自动发送一封包含主题、附件的邮件.md
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 背景 前段时间写了个自动爬虫的脚本,定时在阿里云服务器上执行,会从某个网站上爬取链接保存到txt文本中,但是脚本不...
- 个人博客原文:https://bxm0927.github.io/2017/07/21/node-mail/ no...
- 一、如果在结果中报错550 Error:user has no permission 原因分析:邮箱没有开通POP...