自动签到脚本

发布时间 2023-08-28 14:12:38作者: QianFa01

使用Python + selenium + ChromeDriver实现一个自动签到脚本

本文是在以下网址实现自动签到:

https://www.wenpblog.com/login.html

供参考

我的配置:

系统:windows10
python: Python 3.10.6
selenium: 4.11.2
chrome: 版本 86.0.4240.198(正式版本) (32 位)
chromdriver: 86.0.4240.22

1、配置环境

前提是安装好python和pip,系统环境变量设置已经设置好;
使用pip命令安装selenium;
安装自己Chrome游览器对应版本的ChromeDriver;
安装地址:

http://chromedriver.storage.googleapis.com/index.html

环境变量设置

将解压后的exe文件复制到你chrome游览器exe文件所在的目录中,如下图:
![](Alt text)

将chrome所在目录的地址添加到系统的环境变量中;
起效的测试方法:
win+r下,调用cmd;键入chromedriver,可以看到:
![](Alt text)

最后保险起见,可以重启一下,更新设置;

2、编写脚本

import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By

myusername = "1969529809@qq.com"#登录账号
mypassword = "danqing414"#登录密码

# option = webdriver.ChromeOptions()
# option.binary_location = r'C:\Program Files (x86)\Chromiumbrowser\Chromium.exe'

driver = webdriver.Chrome()
driver.maximize_window() #将窗口最大化
driver.get("https://www.wenpblog.com/login.html")

try:
    # 找到登录框,输入账号密码
    driver.find_element(By.XPATH, '//*[@id="email"]').send_keys(myusername)
    driver.find_element(By.XPATH, '//*[@id="password"]').send_keys(mypassword)
    time.sleep(1)

    # 模拟点击登录
    driver.find_element(By.XPATH, '//*[@id="top"]/div[1]/main/div/div[2]/div/div[3]/div[4]/a[2]').click()
    driver.find_element(By.XPATH, '//*[@id="tpis-from"]/menu/button[4]').click() # 点击确认

    # 找到签到界面
    driver.find_element(By.XPATH, '//*[@id="top"]/div[1]/header/div[2]/nav/a[7]').click()
    time.sleep(2)

    # 点击签到界面
    driver.find_element(By.XPATH, '//*[@id="top"]/div[1]/main/div/div/div[2]/div[2]/a').click()
    time.sleep(1)
    
    driver.find_element(By.XPATH, '//*[@id="tpis-from"]/menu/button[4]').click()
    print("签到成功")
  
except:
    print("签到失败")

driver.quit#退

可以试着先试验一下;

3、在windows环境下设置定时任务

参考 csdn上https://blog.csdn.net/l8947943/article/details/119898781#:~:text=2.1%20%E6%89%93%E5%BC%80%E2%80%9C%E6%8E%A7%E5%88%B6%E9%9D%A2%E6%9D%BF%20%E2%80%9D%E2%80%93%3E%E2%80%9C%E7%B3%BB%E7%BB%9F%E5%92%8C%E5%AE%89%E5%85%A8%E2%80%9D%E2%80%93%3E%E2%80%9C%E7%AE%A1%E7%90%86%E5%B7%A5%E5%85%B7%E2%80%9D%E2%80%93%3E%E2%80%9C%E8%AE%A1%E5%88%92%E4%BB%BB%E5%8A%A1%E2%80%9D%EF%BC%8C%E5%A6%82%E5%9B%BE%202.2,%E6%89%93%E5%BC%80%E2%80%9C%E8%AE%A1%E5%88%92%E4%BB%BB%E5%8A%A1%E2%80%9D%EF%BC%8C%E5%A6%82%E5%9B%BE%EF%BC%8C%E7%82%B9%E5%87%BB%E2%80%9C%E5%88%9B%E5%BB%BA%E5%9F%BA%E6%9C%AC%E4%BB%BB%E5%8A%A1%E2%80%9D%202.3%20%E7%BB%99%E5%AE%9A%E6%97%B6%E4%BB%BB%E5%8A%A1%E5%91%BD%E5%90%8D%EF%BC%8C%E7%82%B9%E5%87%BB%E4%B8%8B%E4%B8%80%E6%AD%A5%202.4%20%E9%80%89%E6%8B%A9%E8%84%9A%E6%9C%AC%E6%89%A7%E8%A1%8C%E7%9A%84%E6%97%B6%E9%97%B4%EF%BC%8C%E4%BB%A5%E6%AF%8F%E5%A4%A9%E6%89%A7%E8%A1%8C%E4%B8%BA%E4%BE%8B%EF%BC%8C%E5%A6%82%E5%9B%BE%EF%BC%8C%E7%82%B9%E5%87%BB%E4%B8%8B%E4%B8%80%E6%AD%A5

最终定时界面:一天执行一次
![](Alt text)