【2018.05.07】python3.6+selenium 实现自动登录126/163邮箱,然后发送邮件

 

# coding:utf-8
'''
说明:
这个自动化脚本要实现的是:
自动登录126/163邮箱,
发送邮件遇到的问题:什么时候切句柄,
有些总是定位不到的属性如何定位(css)值得拥有
'''
from selenium import webdriver
import timedriver = webdriver.Chrome()
# 打开登陆163邮箱的网页
driver.get('http://mail.126.com/')
#在这儿选择126/163,这俩一样
# 将浏览器窗口最大化
driver.maximize_window()
# 休息五分钟等待网页加载完毕
time.sleep(5)
# 找到邮箱账号登录框对应的iframe
driver.switch_to.frame('x-URS-iframe')
# 登陆邮箱
driver.find_element_by_name("email").send_keys("xxxxxxx")#输入你的邮箱账号@前的部分driver.find_element_by_name("password").send_keys("******")#输入你的账号密码
time.sleep(3)
driver.find_element_by_id("dologin").click()time.sleep(6)print("login in")#点击写信driver.find_element_by_xpath(".//*[@id='_mail_component_68_68']").click()
print('click ok')time.sleep(4)
#写入发送人和邮件主题
driver.find_element_by_class_name('nui-editableAddr-ipt').send_keys('[email protected]')
#输入你要发送的邮箱地址
time.sleep(3)
zt = driver.find_element_by_css_selector("div[id^='_mail_input_2']>input.nui-ipt-input")
zt.send_keys(u"selenium自动化测试")#邮箱主题
time.sleep(3)#编写邮件内容,首先切换frame
frame = driver.find_element_by_class_name('APP-editor-iframe')
driver.switch_to_frame(frame)
emailtxt = driver.find_element_by_class_name('nui-scroll')
emailtxt.send_keys("天若有情天亦老\n人间正道是沧桑\n这是一个用自动化脚本发的邮件")
time.sleep(5)
print("content ok")#发送,首先返回上一层frame
driver.switch_to_default_content()
time.sleep(6)
driver.find_element_by_css_selector("div[id^='_mail_button_2']>span.nui-btn_text").click()
print("send over")
 
'''
Frame与Iframe两者可以实现的功能基本相同,
不过Iframe比Frame具有更多的灵活性。
frame是整个页面的框架,
iframe是内嵌的网页元素,
也可以说是内嵌的框架

'''
#switch_to_frame() 切换到frame
#switch_to_default_content() 返回主页面上操作元素,释放ifram
<span style="color:#000000">以上...欢迎交流,一起学习,麻花藤群728109091</span>

猜你喜欢

转载自blog.csdn.net/qq_38534107/article/details/80226718