背景:

做定时任务时,一般都是写死每周五XXXXX,但有时遇到节假日的情况,周五可能不是本周最后一个工作日

之前用的  http://api.goseek.cn/Tools/holiday?date=20200103 接口后来发现不能用了,于是换了个接口,http://timor.tech/api/holiday/info/2020-01-03

-----修改by20200103

原代码如下:

 import urllib2,datetime,json

 nowTime = datetime.datetime.now().strftime("%Y%m%d") #当前日期
nowTimeLast = (datetime.datetime.now() + datetime.timedelta(days=1)).strftime("%Y%m%d") #当前日期后一天 server_url = "http://api.goseek.cn/Tools/holiday?date=" vop_nowTime = json.loads(urllib2.urlopen(urllib2.Request(server_url + nowTime)).read())
vop_nowTimeLast = json.loads(urllib2.urlopen(urllib2.Request(server_url + nowTimeLast)).read()) codeNow = vop_nowTime['data']
codeNowLast = vop_nowTimeLast['data']
print(codeNow,codeNowLast) #正常工作日对应结果为 0, 法定节假日对应结果为 1, 节假日调休补班对应的结果为 2,休息日对应结果为 3
if (codeNow == 0 or codeNow == 2) and (codeNowLast == 1 or codeNowLast == 3):
print'明天休息啦'
#你的函数

更新后的代码如下:

 import urllib2,datetime,json

 nowTime = datetime.datetime.now().strftime("%Y-%m-%d")  # 当前日期
nowTimeLast = (datetime.datetime.now() + datetime.timedelta(days=1)).strftime("%Y-%m-%d") # 当前日期后一天 server_url = "http://timor.tech/api/holiday/info/" vop_nowTime = json.loads(urllib2.urlopen(urllib2.Request(server_url + nowTime)).read())
vop_nowTimeLast = json.loads(urllib2.urlopen(urllib2.Request(server_url + nowTimeLast)).read()) codeNow = vop_nowTime['type']['type']
codeNowLast = vop_nowTimeLast['type']['type']
codeNowLast_ho = vop_nowTimeLast['holiday']
print(codeNow,codeNowLast,codeNowLast_ho) #工作日、周末、节日 0 1 2
if ((codeNow == 0) or (codeNow == 1 and codeNowLast_ho != None)) and ((codeNowLast == 2) or (codeNowLast == 1 and codeNowLast_ho==None)):
print'明天休息啦'
#你的函数

python 查询每周最后一个工作日的更多相关文章

  1. 使用python的Flask实现一个RESTful API服务器端

    使用python的Flask实现一个RESTful API服务器端 最近这些年,REST已经成为web services和APIs的标准架构,很多APP的架构基本上是使用RESTful的形式了. 本文 ...

  2. python 查询 elasticsearch 常用方法(Query DSL)

    1. 建立连接 from elasticsearch import Elasticsearch es = Elasticsearch(["localhost:9200"]) 2. ...

  3. Python查询Mysql时返回字典结构的代码

    Python查询Mysql时返回字典结构的代码 MySQLdb默认查询结果都是返回tuple,输出时候不是很方便,必须按照0,1这样读取,无意中在网上找到简单的修改方法,就是传递一个cursors.D ...

  4. java和python根据对象某一个属性排序

    最近在学习java,目前看到java如何对一个对象列表进行排序. 我有一个Member类: public Member(String name,Calendar birthday,Sex gender ...

  5. Python 学习之中的一个:在Mac OS X下基于Sublime Text搭建开发平台包括numpy,scipy

    1 前言 Python有许多IDE能够用,官方自己也带了一个,Eclipse也能够. 但我在使用各种IDE之后,发现用Sublime Text是最好用的一个.因此.我都是用Sublime Text来编 ...

  6. python查询修改配置文件功能

    阅读目录 一.python查询功能代码 1.查询修改配置文件 global log 127.0.0.1 local2 daemon maxconn 256 log 127.0.0.1 local2 i ...

  7. python查询数据库返回数据

    python查询数据库返回数据主要运用到flask框架,pymysql 和 json‘插件’ #!/usr/bin/python # -*- coding: UTF-8 -*- import pymy ...

  8. [python] 查询mysql返回datetime类型数据的处理

    Python 查询Mysql,如果是datetime类型,在json序列化的时候会出现问题. 在网上查了一下,解决方案基本都是遍历dict数据,如果是datetime则转化为字符串. from dat ...

  9. hbase源码系列(十五)终结篇&Scan续集-->如何查询出来下一个KeyValue

    这是这个系列的最后一篇了,实在没精力写了,本来还想写一下hbck的,这个东西很常用,当hbase的Meta表出现错误的时候,它能够帮助我们进行修复,无奈看到3000多行的代码时,退却了,原谅我这点自私 ...

随机推荐

  1. SGE基本操作

    SGE怎样工作: 1. 接受用户投放的任务 2. 在任务运行以前,将任务放到一个存储区域 3. 发送任务到一个执行设备,并监控任务的运行 4. 运行结束写回结果并记录运行日志 常用的SGE命令: 1. ...

  2. CentOS 安装tab命令补全

    CentOS 安装tab命令补全 1. 安装epel 源 yum -y install epel-release 2. 加快yum速度 yum -y install yum-plugin-fastes ...

  3. [VS] - EntityFrameworkCore 2.0 安装失败 之解决

    背景 在 Visual Studio 2017 中,使用 Nuget 包管理器安装 EntityFrameworkCore 2.0 失败.切换至程序包控制器管理台,查看 Error Message: ...

  4. str.format() 格式化数字的多种方法

    Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 : 来代替以前的 % . format 函数可以接受不限个参数 ...

  5. teamviewer远程控制程序免费版百度云下载

    TeamViewer是一个远程共享桌面软件,使远程传输变得简单快速,远程访问安全可靠,能在任何防火墙后台进行远程控制.只需用户在两台计算机上同时运行这个软件就可以开始工作.使用时关闭杀毒软件,防止误报 ...

  6. Go语言学习笔记(10)——错误处理示例

    // 定义一个 DivideError 结构 type DivideError struct { dividee int divider int } // 实现 `error` 接口 func (de ...

  7. pb笔记之数据窗口设置操作

    1 使DataWindow列只能追加不能修改如何使DataWindow中的数据只能追加新记录而不能修改,利用 Column 的 Protect 属性可以很方便的做到这一点,方法如下:将每一列的 Pro ...

  8. 2019牛客多校八 H. How Many Schemes (AC自动机,树链剖分)

    大意: 给定树, 每条边有一个字符集合, 给定$m$个模式串, $q$个询问$(u,v)$, 对于路径$(u,v)$中的所有边, 每条边从对应字符集合中取一个字符, 得到一个串$s$, 求$s$至少包 ...

  9. 软键盘 显示隐藏 测量高度 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  10. shell 学习笔记1-什么是shell,shell变量

    一.介绍 1.什么是shell Shell 既是一种命令语言,又是一种程序设计语言,他在操作系统得最外层,负责直接与用户对话,把用户得输入解释个OS,并处理各类操作系统得输出结果,输出到屏幕返回个i用 ...