Python+Selenium实现上班体温打卡的脚本程序

为应对疫情期间频繁的体温打卡需求,作者开发了一款基于Python和Selenium的自动打卡程序,可实现实习公司及学校体温打卡的自动化操作。通过分析网页元素,使用find_element_by_class_name和send_keys等方法,程序能够自动填写姓名、体温等信息,并完成提交。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python+Selenium实现上班体温打卡的脚本程序

YQ期间,每天要打实习公司的体温打卡,还要打学校的体温打卡,经常忙到忘记,非常的难受,一怒之下,写了这个打卡程序,来帮我实现体温打卡!(温馨提示,请勿用于不良用途,本人由于一直未出南京市,所以才写了这个程序!
由于隐私,链接不就不挂了,反正是金数据的链接。
在这里插入图片描述
按F12打开浏览器菜单,查看其中每一个表单的元素,不知道怎么查看的,F12后,点击下图红色箭头所示的箭头来查找表单的元素
在这里插入图片描述
获取到第一个表单的classname后,我们可以使用selenium的find_element_by_class_name方法,然后使用send_keys方法将名字传给元素
后面的表单我们可以同样使用该方法,需要填字符的我们是使用send_keys方法,需要点击鼠标的我们使用click()方法
完整代码如下:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
import random
from bs4 import BeautifulSoup
import re
names = ['张三','李四','王无','赵六','老八']
def sendmessage(ss):
    temp=random.uniform(36.3,36.8)
    temputers=round(temp,1)
    temputer=str(temputers)
    driver = webdriver.Chrome('D:/chromedriver.exe')
    driver.get("这里填要打卡的链接")
    name = driver.find_element_by_class_name('ant-input')
    name.send_keys(ss)
    driver.find_element_by_xpath('//*[@id="root"]/div/form/div[3]/div/div[4]/div/div[2]/div/div/span/div/div/div/div/div[1]').click()
    driver.find_element_by_id('react-select-2-option-0').click()
    driver.find_element_by_xpath('//*[@id="root"]/div/form/div[3]/div/div[6]/div/div[2]/div/div/span/div/div/div/div/div[1]').click()
    driver.find_element_by_id('react-select-3-option-0').click()
    time.sleep(0.5)
    driver.find_element_by_xpath('//*[@id="root"]/div/form/div[3]/div/div[8]/div/div[2]/div/div/span/div/div/div/div/div[1]').click()
    driver.find_element_by_xpath('//*[@id="react-select-4-option-0"]').click()
    driver.find_element_by_xpath('//*[@id="root"]/div/form/div[3]/div/div[10]/div/div[2]/div/div/span/div/div[2]/div/div/label/span[1]/input').click()
    driver.find_element_by_xpath('//*[@id="root"]/div/form/div[3]/div/div[12]/div/div[2]/div/div/span/div/div[1]/div/div/label').click()
    driver.find_element_by_xpath('//*[@id="root"]/div/form/div[3]/div/div[14]/div/div[2]/div/div/span/div/span/input').send_keys(temputer)
    driver.find_element_by_xpath('//*[@id="root"]/div/form/div[3]/div/div[16]/div/div[2]/div/div/span/input').send_keys('无')
    time.sleep(5)
    driver.find_element_by_xpath('//*[@id="root"]/div/form/div[5]/div[1]/button').click()

for i in range(0,5):
    name = names[i]
    myname= str(name)
    sendmessage(myname)
    time.sleep(3)

我这里为我们部门好几个人打卡,所以使用了一个数组将部门的人名字都存储进去,同时设置了体温在36.3-36.8之间的随机值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值