python 判断节假日_[宜配屋]听图阁

不废话,直接上代码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设计】。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值