import time from selenium import webdriver from selenium.webdriver import ChromeOptions from selenium.webdriver.common.keys import Keys from getpass import getpass def run(): driver.get(url='https://mail.qq.com/') # 遇到iframe,須要切換 iframe_list = driver.find_elements_by_tag_name('iframe') # print(iframe_list) driver.switch_to.frame(iframe_list[1]) # 輸入用戶名、密碼並登陸 driver.find_element_by_class_name('inputstyle').send_keys(user) driver.find_element_by_class_name('password').send_keys(pwd) driver.find_element_by_class_name('password').send_keys(Keys.ENTER) # 點擊寫信 driver.find_element_by_id('composebtn').click() iframe = driver.find_element_by_id('mainFrame') driver.switch_to.frame(iframe) # 輸入收件人、主題信息 driver.find_element_by_xpath('//*[@id="toAreaCtrl"]/div[2]/input').send_keys(to) driver.find_element_by_xpath('//*[@id="subject"]').send_keys(theme) # 遇到body iframe iframe_body = driver.find_element_by_class_name('qmEditorIfrmEditArea') driver.switch_to.frame(iframe_body) # 輸入文本 driver.find_element_by_tag_name('body').send_keys(content) # 切出body iframe driver.switch_to.default_content() driver.switch_to.frame(iframe) # 點擊發送按鈕 driver.find_element_by_xpath('//*[@id="toolbar"]/div/a[1]').click() # time.sleep(3) # driver.quit() if __name__ == '__main__': to = '' # 你想發的郵箱 theme = 'python自動發送郵件' content = '不用回,我就試試,哈哈哈。' user = '' # QQ帳號 pwd = getpass('密碼:') # QQ密碼 # 建立 option 對象 option = ChromeOptions() option.add_experimental_option('excludeSwitches', ['enable-automation']) # 建立瀏覽器對象 driver = webdriver.Chrome(options=option) ''' driver = webdriver.Chrome(executable_path=r'E:\chromedriver.exe') ''' driver.implicitly_wait(10) run()