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

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

YQ期间,每天要打实习公司的体温打卡,还要打学校的体温打卡,经常忙到忘记,非常的难受,一怒之下,写了这个打卡程序,来帮我实现体温打卡!(温馨提示,请勿用于不良用途,本人由于一直未出南京市,所以才写了这个程序!
由于隐私,链接不就不挂了,反正是金数据的链接。
Python+Selenium实现上班体温打卡的脚本程序_第1张图片
按F12打开浏览器菜单,查看其中每一个表单的元素,不知道怎么查看的,F12后,点击下图红色箭头所示的箭头来查找表单的元素
Python+Selenium实现上班体温打卡的脚本程序_第2张图片
获取到第一个表单的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之间的随机值

你可能感兴趣的:(selenium,python,chrome)