Python3自动签到 定时任务 判断节假日的实例


Posted in Python onNovember 13, 2018

不废话,直接上代码Python3.6

签到代码,只需修改url,账号,密码即可,此处是登录时无验证登录,有验证码的自行补充

# -*- coding:utf-8 -*- 
import json
import urllib.request
import datetime
 
# 模拟浏览器打开网站
browser = webdriver.Chrome()
browser.get('http://**.**.121.54/')
# 将窗口最大化
 browser.maximize_window()
     
# 根据路径找到按钮,并模拟进行点击
browser.find_element_by_id('btn').click()
# 延时2秒,以便网页加载所有元素,避免之后找不到对应的元素
time.sleep(2)
     
# 这里是找到输入框,发送要输入的用户名和密码,模拟登陆
browser.find_element_by_id(
     "username").send_keys("123456")
browser.find_element_by_id(
     "password").send_keys("123456")
# 在输入用户名和密码之后,点击登陆按钮
browser.find_element_by_id('btn').click()
time.sleep(2)    
# 点击登陆后的页面中的签到,跳转到签到页面
browser.find_element_by_id("signInCoin").click()
    time.sleep(2)   
# 这个print其实没事什么用,如果真的要测试脚本是否运行成功,可以用try来抛出异常
print("签到成功")
     
# 脚本运行成功,退出浏览器
browser.quit()

定时任务代码

import time
from datetime import datetime, timedelta
from time import sleep
 
SECONDS_PER_DAY = 24 * 60 * 60
 
 
def doFunc():
 print "do Function..."
 
def doFirst():
 curTime = datetime.now()
 print (curTime)
 desTime = curTime.replace(hour=20, minute=0, second=0, microsecond=0)
 print (desTime)
 delta = curTime - desTime
 print (delta)
 skipSeconds = SECONDS_PER_DAY - delta.total_seconds()
 print ("Next day must sleep %d seconds" % skipSeconds)
 sleep(skipSeconds)
 #时间到执行方法
 doFunc()
 
if __name__ == "__main__":
 doFirst()

判断当前日期是否是节假日

1、接口地址:http://api.goseek.cn/Tools/holiday?date=数字日期

2、返回数据:工作日对应结果为 0, 休息日对应结果为 1, 节假日对应的结果为 2

3、节假日数据说明:本接口包含2017年起的中国法定节假日数据,数据来源国务院发布的公告,每年更新1次,确保数据最新

#获取当前时间 格式20180213
nowTime=time.strftime('%Y%m%d',time.localtime())
date = nowTime
#节假日接口
server_url = "http://api.goseek.cn/Tools/holiday?date="
  
vop_url_request = urllib.request.Request(server_url+date)
vop_response = urllib.request.urlopen(vop_url_request)
  
vop_data= json.loads(vop_response.read())
#打印返回的Json串  
print (vop_data)
 
if vop_data['data']==0:
 print ('This day is weekend 6-7')
elif vop_data['data']==1:
 print ('This day is weekend 6-7')
elif vop_data['data']==2:
 print ('This day is holiday')
else:
 print ('Error')

根据当前日期是否是节假日进行,自动签到打卡案例

# -*- coding:utf-8 -*- 
import json
import urllib.request
import datetime
 
# 方便延时加载
import time
from selenium import webdriver
 
SECONDS_PER_DAY = 24 * 60 * 60
 
##定时执行的任务 
 
from datetime import datetime, timedelta
from time import sleep
 
def doFirst():
 curTime = datetime.now()
 print (curTime)
 desTime = curTime.replace(hour=7, minute=45, second=0, microsecond=0)
 print (desTime)
 delta = desTime-curTime
 
 sleeptime = delta.total_seconds() % SECONDS_PER_DAY
 print(sleeptime)
 print ("Now day must sleep %d seconds" % sleeptime)
 
 sleep(sleeptime)
 #nowTime=datetime.datetime.now().strftime('%Y%m%d')#现在
 nowTime=time.strftime('%Y%m%d',time.localtime())
 date = nowTime
 server_url = "http://api.goseek.cn/Tools/holiday?date="
  
 vop_url_request = urllib.request.Request(server_url+date)
 vop_response = urllib.request.urlopen(vop_url_request)
  
 vop_data= json.loads(vop_response.read())
  
 print (vop_data)
 
 if vop_data['data']==0:
    # 模拟浏览器打开网站
    browser = webdriver.Chrome()
    browser.get('http://***.***.***.***/')
     # 将窗口最大化
    browser.maximize_window()
     
    # 根据路径找到按钮,并模拟进行点击
    browser.find_element_by_id('btn').click()
    # 延时2秒,以便网页加载所有元素,避免之后找不到对应的元素
    time.sleep(2)
     
    # 格式是PEP8自动转的
    # 这里是找到输入框,发送要输入的用户名和密码,模拟登陆
    browser.find_element_by_id(
     "username").send_keys("123456")
    browser.find_element_by_id(
     "password").send_keys("123456")
    # 在输入用户名和密码之后,点击登陆按钮
    browser.find_element_by_id('btn').click()
    time.sleep(2)    
    # 点击登陆后的页面中的签到,跳转到签到页面
    browser.find_element_by_id("signInCoin").click()
    time.sleep(2)   
    # 这个print其实没事什么用,如果真的要测试脚本是否运行成功,可以用try来抛出异常
    print("签到成功")
     
    # 脚本运行成功,退出浏览器
    browser.quit()
 elif vop_data['data']==1:
  print ('This day is weekend 6-7')
 elif vop_data['data']==2:
  print ('This day is holiday')
 else:
  print ('Error')
 
if __name__ == "__main__":
 doFirst()

以上这篇Python3自动签到 定时任务 判断节假日的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中的一些类型转换函数小结
Feb 10 Python
在Python的Flask框架下使用sqlalchemy库的简单教程
Apr 09 Python
Python通过RabbitMQ服务器实现交换机功能的实例教程
Jun 29 Python
python中defaultdict的用法详解
Jun 07 Python
Python3实现带附件的定时发送邮件功能
Dec 22 Python
python绘制立方体的方法
Jul 02 Python
详解Python最长公共子串和最长公共子序列的实现
Jul 07 Python
Python绘制KS曲线的实现方法
Aug 13 Python
Python图像处理之gif动态图的解析与合成操作详解
Dec 30 Python
python 基于selenium实现鼠标拖拽功能
Dec 24 Python
Python数据模型与Python对象模型的相关总结
Jan 26 Python
pytorch实现ResNet结构的实例代码
May 17 Python
python判断输入日期为第几天的实例
Nov 13 #Python
python使用循环打印所有三位数水仙花数的实例
Nov 13 #Python
Python判断一个三位数是否为水仙花数的示例
Nov 13 #Python
Python一句代码实现找出所有水仙花数的方法
Nov 13 #Python
python简易实现任意位数的水仙花实例
Nov 13 #Python
python找出完数的方法
Nov 12 #Python
python 获取一个值在某个区间的指定倍数的值方法
Nov 12 #Python
You might like
下拉列表多级联动dropDownList示例代码
2013/06/27 PHP
析构函数与php的垃圾回收机制详解
2013/10/28 PHP
linux下安装php的memcached客户端
2014/08/03 PHP
PHP全功能无变形图片裁剪操作类与用法示例
2017/01/10 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
2018/02/10 PHP
Jquery AJAX 用于计算点击率(统计)
2010/06/30 Javascript
jQuery的实现原理的模拟代码 -4 重要的扩展函数 extend
2010/08/03 Javascript
javascript下高性能字符串连接StringBuffer类
2010/08/16 Javascript
Js(JavaScript)中,弹出是或否的选择框示例(confirm用法的实例分析)
2013/07/09 Javascript
给文字加上着重号的JS代码
2013/11/12 Javascript
javascript实现简单的进度条
2015/07/02 Javascript
JavaScript中的splice方法用法详解
2016/07/20 Javascript
前端框架Vue.js中Directive知识详解
2016/09/12 Javascript
jQuery手风琴的简单制作
2017/05/12 jQuery
bootstrap动态添加面包屑(breadcrumb)及其响应事件的方法
2017/05/25 Javascript
three.js实现3D视野缩放效果
2017/11/16 Javascript
Vue.js组件高级特性实例详解
2018/12/24 Javascript
JavaScript如何判断对象有某属性
2020/07/03 Javascript
jdk1.8+vue elementui实现多级菜单功能
2020/09/24 Javascript
[39:52]2018DOTA2亚洲邀请赛 4.3 突围赛 EG vs Newbee 第一场
2018/04/04 DOTA
Python3中多线程编程的队列运作示例
2015/04/16 Python
python 根据正则表达式提取指定的内容实例详解
2016/12/04 Python
Python 数据结构之堆栈实例代码
2017/01/22 Python
python无限生成不重复(字母,数字,字符)组合的方法
2018/12/04 Python
selenium+python截图不成功的解决方法
2019/01/30 Python
手把手教你使用Python创建微信机器人
2019/04/29 Python
Django如何实现上传图片功能
2019/08/16 Python
python turtle 绘制太极图的实例
2019/12/18 Python
python实现ftp文件传输功能
2020/03/20 Python
python 使用建议与技巧分享(四)
2020/08/18 Python
ASOS英国官网:英国在线时装和化妆品零售商
2017/05/19 全球购物
毕业生自荐书模版
2014/01/04 职场文书
管理建议书范文
2014/05/13 职场文书
美术第二课堂活动总结
2014/07/08 职场文书
学校领导班子对照检查材料
2014/08/28 职场文书
2014年骨干教师工作总结
2014/12/19 职场文书