欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python+selenium自动循环送贺卡

程序员文章站 2022-05-12 17:51:56
Python源代码如下: ......

Python源代码如下:

# coding=utf-8
from selenium import webdriver
from time import sleep
from random import randint


def auto_throw(target_qq, username, password):
    """自动循环送贺卡"""
    driver = webdriver.Chrome()
    driver.get("https://mail.qq.com")
    driver.set_window_size(1100, 580)
    sleep(1)
    # 切换iframe表单
    driver.switch_to.frame("login_frame")
    driver.find_element_by_xpath('//*[@id="u"]').send_keys(username)
    driver.find_element_by_xpath('//*[@id="p"]').send_keys(password)
    driver.find_element_by_xpath('//*[@id="login_button"]').click()
    sleep(1)
    # 将表单切回到最外层
    driver.switch_to.default_content()
    sleep(2)
    m = 0
    while True:
        try:
            m += 1
            driver.switch_to.default_content()
            driver.find_element_by_xpath('//*[@id="folder_card"]').click()  # 贺卡
            sleep(2)
            # 切换iframe表单
            driver.switch_to.frame("mainFrame")
            driver.find_element_by_xpath('//*[@id="preview_1072308"]/img').click()   # 儿童节
            # 将表单切回到最外层
            driver.switch_to.default_content()
            sleep(2)
            driver.find_element_by_xpath('//div[@class="dialog_operate"]/a').click()    # 发送
            sleep(2)
            driver.find_element_by_xpath('//a[@title="%s@qq.com"]'%target_qq).click()
            sleep(1)
            driver.find_element_by_xpath('//*[@id="GreetingCard_QMDialog_content"]').clear()
            driver.find_element_by_xpath('//*[@id="GreetingCard_QMDialog_content"]').send_keys("第%d张贺卡发送成功!代号%d!"%(m,randint(10000,100000)))
            sleep(2)
            driver.find_element_by_xpath('//*[@id="GreetingCard_QMDialog_sendbtn"]').click()   # 发送
            print("第%d张贺卡发送成功!"%m)
            sleep(2)
        except:
            print("送卡失败!")
            sleep(2)


if __name__ == '__main__':
    print("--------自动送贺卡脚本--------")
    target_qq = input("请输入对方qq号:")
    username = input("输入你的QQ邮箱用户名:")
    password = input("输入你的QQ邮箱登录密码:")
    auto_throw(target_qq, username, password)