selenium+python 实现163邮箱自动发送

最近在学selenium,于是做了一个自动发送邮件的程序

from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
from time import sleep


#调用火狐浏览器
#driver = webdriver.Firefox()
binary = FirefoxBinary('D:\\安装软件\\火狐浏览器\\firefox.exe')
driver = webdriver.Firefox(firefox_binary=binary)

frist_url="http://mail.163.com/#return"
driver.get(frist_url)
sleep(2)
#切换到iframe(id = "x-URS-iframe")
driver.switch_to_frame("x-URS-iframe")
#找邮箱输入框
driver.find_element_by_class_name("j-inputtext").clear()
driver.find_element_by_class_name("j-inputtext").send_keys("我的邮箱地址")
sleep(2)
#找密码输入框
driver.find_element_by_name("password").clear()
driver.find_element_by_name("password").send_keys("我的密码")
#登录
driver.find_element_by_id("dologin").click()
sleep(2)
#css定位的强大之处,参考网站  http://www.cnblogs.com/minieye/p/5803640.html
#这里有一个确认继续登录
driver.find_element_by_css_selector("[data-action=leakLogin]").click()
#在表单里面操作完毕后,无论页面是否进行跳转,必须有退出表单的操作
driver.switch_to_default_content()    #当使用火狐浏览器的时候,这句话很重要。没有直接打不开写信
sleep(3)
#点击写信
driver.find_element_by_xpath("html/body/div/nav/div/ul/li[2]/span[2]").click()
sleep(3)
#写收件人
driver.find_element_by_class_name("nui-editableAddr-ipt").send_keys("XXXXXXX@qq.com")  
sleep(2)
#写主题
driver.find_element_by_xpath("html/body/div/div/div[2]/div/section/header/div[2]/div/div/div/input").send_keys("这是主题")
#切换到frame
frame = driver.find_element_by_class_name("APP-editor-iframe")  #若iframe有id或是name属性,可以直接切换
driver.switch_to_frame(frame)
#发送内容
driver.find_element_by_xpath('//body[@class="nui-scroll"]').send_keys("这是内容啊")
driver.switch_to_default_content()
sleep(3)
driver.find_element_by_xpath('html/body/div[2]/div/div[2]/header/div/div/div/span').click()
driver.quit()
 

有兴趣的可以加一下python爱好者的QQ群:152376662

这里有很多像你一样的伙伴,共同分享学习python的经验!


*备注:

1.元素定位很灵活,有很多种方式实现。具体要看使用哪个简便一些

2.运行过程中,偶尔会出错,可以设置元素等待

3.在调用ie浏览器的时候,总是找不到发送内容的模块。后续再完善

4.元素定位学习网站:

http://www.cnblogs.com/minieye/p/5803640.html

版本号:selenium == 3.4.0

             Firefox == 54.0.1

             python == 3.6.0

             geckodriver == v0.18.0-win32

(geckodriver版本包已经上传到有道云和本站)



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

软件测试技术

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值