Python签到 教你用python编写脚本实现自动签到
Cresyeal 人气:1想了解教你用python编写脚本实现自动签到的相关内容吗,Cresyeal在本文为您仔细讲解Python签到的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Python签到,Python脚本,自动签到,下面大家一起来学习吧。
1. 背景原因
最近才上班,要求每天打卡!我老是忘记,于是乎搞个脚本进行自动签到。
2. 签到原理
模拟用户进行自行输入,然后登录,然后签到,在研究过程中使用到了python的selenium
包,本人在win10环境中进行测试使用,可以实现基本的自动打卡。
3. 需要的环境selenium
pip install selenium
4. 安装模拟的插件
需要从网上下载模拟点击浏览器的google浏览器插件chromedriver.exe
,下载链接:https://npm.taobao.org/mirrors/chromedriver/,需要找到与自己浏览器适配的插件。(如何查看自己Chrome适配的插件版本?如图:)
5. 下载完成
将插件放到Chrome.exe所在的文件夹下,如图:
6.正题
开始工作结束,接下来进入代码正题:
import time import datetime import random from selenium import webdriver def morning_clockin(): # 找到插件的路径,使用它驱动操作 browser = webdriver.Chrome('C:\Program Files\Google\Chrome\Application\chromedriver.exe') # 选择需要打卡的网址,填入你的签到网页 browser.get('https://www.baudu.login') # 找到邮件和密码输入框的xpath,并在对应的位置送入账号密码 browser.find_element_by_xpath('//*[@id="email"]').send_keys("724183***@qq.com") browser.find_element_by_xpath('//*[@id="passwd"]').send_keys("zhan******") # 找到登录按钮的xpath,模拟点击 browser.find_element_by_xpath('//*[@id="login"]').click() time.sleep(2) # 找到签到按钮的xpath,模拟签到 browser.find_element_by_xpath('/html/body/div[3]/div[7]/div/button').click() if __name__ == '__main__': # 获取当天的星期,周六日不打卡 today = datetime.datetime.now().weekday() + 1 if (today % 7 == 0) or (today % 7 == 6): print("今天是本周的第 {} 天,无需打卡!".format(datetime.datetime.now().weekday() + 1)) # 工作日打卡 else: # 早上打卡---设置0-300秒之间随机数打卡 print(datetime.datetime.now()) random_time = random.randint(0, 60) time.sleep(random_time) # 进行打卡 morning_clockin() print(datetime.datetime.now())
7. 完工!
如果有验证码,可以使用带验证码的百度插件api进行调用,我是纯内部系统无验证码,没研究验证码部分。最后剩下的就是写定时任务了,参考网上博客即可!
附带一篇写的很详细的Selenium WebDriver教程!传送门
8. 更新
创建定时任务运行脚本
传送门:https:
加载全部内容