selenium自动发送邮件

1、下载浏览器驱动

1、先下载好浏览器的驱动,驱动的版本和浏览器的版本尽量一致
下载网址:http://npm.taobao.org/mirrors/chromedriver/
我的谷歌浏览器的版本是92,下载92的驱动
补充:官方下载地址驱动下载
在这里插入图片描述
2.没有64位的,下载32位的就可以。
在这里插入图片描述
3、将驱动解压到Python的安装目录下去,与python.exe 同级目录。可以在cmd中查询Python的路径,使用命令where python。也可以打开文件所在位置。
在这里插入图片描述

2、自动发邮箱的代码以及步骤

邮箱账户和密码等是不正确的,请用自己的邮箱

from selenium import webdriver
import time
#1打开谷歌浏览器
driver=webdriver.Chrome()
#2访问网易邮箱,最大化窗口
driver.maximize_window()
driver.get('https://www.baidu.com/')
driver.find_element_by_id('kw').send_keys('网易邮箱')
driver.find_element_by_id('su').click()
time.sleep(2)
#选择点击网易邮箱官网
driver.find_elements_by_css_selector('.c-title >a')[0].click()
# driver.find_elements_by_xpath(' /html/body/div[1]/div[4]/div[1]/div[3]/div[1]/div/h3/a[1]')[0].click()
#切换到最新窗口
driver.switch_to.window(driver.window_handles[-1])
# driver.get(r'https://mail.163.com/')
#3定位到frame
frame1=driver.find_element_by_xpath('/html/body/div[2]/div[3]/div[1]/div/div[4]/div[1]/div[1]/iframe')
#4切换到frame1中
driver.switch_to.frame(frame1)
#5往输入框中填值
driver.find_element_by_name('email').send_keys('q3292235057')
driver.find_element_by_name('password').send_keys('@hy232456')
#定位登录并且点击
driver.find_element_by_id("dologin").click()
time.sleep(3)
#点击写信
driver.find_element_by_xpath('/html/body/div[1]/nav/div[1]/ul/li[2]/span[1]/b').click()
time.sleep(3)
# driver.find_element_by_css_selector('input[aria-label="收件人地址输入框,请输入邮件地址,多人时地址请以分号隔开"]').send_keys('24')
driver.find_element_by_xpath('/html/body/div[2]/div[1]/div/div[1]/section/header/div[1]/div[1]/div/div[2]/div/input').send_keys('75033115188@qq.com')
driver.find_element_by_xpath('/html/body/div[2]/div[1]/div/div[1]/section/header/div[2]/div[1]/div/div/input').send_keys('明哥请查收作业')
#传附件
driver.find_element_by_xpath('/html/body/div[2]/div[1]/div/div[1]/section/header/div[3]/div[1]/div[2]/input').send_keys(r'C:\Users\Administrator\Desktop\黄元铅-网易发邮件.py')
time.sleep(3)
#正文部分
frame2=driver.find_element_by_xpath('/html/body/div[2]/div[1]/div[2]/div[1]/section/section/div/div[1]/div[1]/div[2]/iframe')
driver.switch_to.frame(frame2)
#文件路径
a=r'C:\Users\Administrator\Desktop\tt.txt'
#打开文件,只读,utf-8编码格式
file=open(a,'r',encoding='utf-8')
#读文件,将文件转化成字符串型
words=str(file.read())
#关文件
file.close()
driver.find_element_by_xpath('/html/body').send_keys(words)
#回到主文档
driver.switch_to.default_content()

# #点击发送
driver.find_element_by_xpath('/html/body/div[2]/div[1]/div/div[1]/section/footer/div[1]/span[2]').click()
time.sleep(13)
driver.quit()

完。。。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用selenium结合email模块实现自动发送邮件的功能。以下是一个简单的示例代码: ```python from selenium import webdriver import time import smtplib from email.mime.text import MIMEText from email.header import Header # 邮件发送者和接收者的信息 sender = 'sender@example.com' receiver = 'receiver@example.com' password = 'your_password' # 构建邮件内容 message = MIMEText('这是一封自动发送邮件', 'plain', 'utf-8') message['From'] = Header(sender, 'utf-8') message['To'] = Header(receiver, 'utf-8') message['Subject'] = Header('自动发送邮件', 'utf-8') # 使用selenium完成登录操作 browser = webdriver.Chrome() browser.get('https://mail.example.com') browser.find_element_by_name('username').send_keys(sender) browser.find_element_by_name('password').send_keys(password) browser.find_element_by_id('login_button').click() time.sleep(1) # 发送邮件 browser.find_element_by_id('compose_button').click() time.sleep(1) browser.find_element_by_name('to').send_keys(receiver) browser.find_element_by_name('subjectbox').send_keys('自动发送邮件') browser.find_element_by_xpath('//div[text()="发送"]').click() time.sleep(1) # 关闭浏览器 browser.quit() # 发送邮件 smtp_server = 'smtp.example.com' smtp_port = 25 smtp_sender = smtplib.SMTP(smtp_server, smtp_port) smtp_sender.login(sender, password) smtp_sender.sendmail(sender, [receiver], message.as_string()) smtp_sender.quit() ``` 需要注意的是,以上示例代码只是一个简单的示例,实际应用中还需要根据具体情况进行修改和完善。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值