【Python编程快速上手】【实践项目】Python+selenium命令行邮件程序

项目介绍

编写一个程序,通过命令行接受电子邮件地址和文本字符串。然后利用selenium
登录到你的邮件账号,将该字符串作为邮件,发送到提供的地址(你也许希望为这
个程序建立一个独立的邮件账号)。


代码块

#! /usr/bin/env python3
# senEmail.py - 利用命令行发送字符串到指定邮箱地址

import sys, time
from selenium import webdriver

browser = webdriver.Chrome()
browser.get('http://mail.163.com')

time.sleep(1)
browser.switch_to.frame('x-URS-iframe')                                             # 定位到iframe元素
email_elem = browser.find_element_by_name('email')                                  # 查找email账号和密码关联的元素
password_elem = browser.find_element_by_name('password')

email_elem.send_keys('not_my_real_email')                                           # 调用send_keys()方法填写表单
password_elem.send_keys('123456')
login_elem = browser.find_element_by_id('dologin')                                  # 查找登录按钮关联元素,并模拟鼠标点击登录
login_elem.click()

time.sleep(1)                                                                       # 让程序等待1秒,待页面加载完成
write_elem = browser.find_element_by_xpath('/html/body/div/nav/div/ul/li[2]')       # 查找"写信"选项关联的元素并模拟鼠标点击
write_elem.click()

time.sleep(1)
# 查找"收件人"选项关联的元素
recipient_elem = browser.find_element_by_xpath('//div[contains(@id,"_mail_emailinput")]/input')
recipient_elem.send_keys(sys.argv[1])                                               # 将命令行中的收件人字符串输入到当前表单中

frame_elem = browser.find_element_by_xpath('//iframe[@class="APP-editor-iframe"]')
browser.switch_to.frame(frame_elem)                                                 # 定位到新的iframe元素
content_elem = browser.find_element_by_xpath('/html/body')
content_elem.send_keys(sys.argv[2])                                                 # 将命令行中的文本字符串输入到内容表单中

browser.switch_to.default_content()                                                 # 重新返回主文档
send_elem = browser.find_element_by_xpath('//div[contains(@id,"_mail_button_2")]')  # 查找"发送"按钮的关联元素,并模拟鼠标点击发送
send_elem.click()

browser.find_element_by_xpath('//div[contains(@id,"_mail_button_11")]').click()     # 鼠标模拟点击确认不填写主题按钮

time.sleep(1)
browser.close()                                                                     # 退出浏览器

猜你喜欢

转载自blog.csdn.net/simplelearner/article/details/81985586