逛博客的时候发现别人提出的一个问题,怎么判断是否为节假日。思考了一会想到了两个解决方案
1.自己记录节假日信息 2.第三方数据接口
自己录制这个直接被我给pass掉了,繁琐还有可能遗失之类的。那么就第三方数据接口这个方案了。
通过百度找到了一个看起来还不错的
https://www.juhe.cn/docs/api/id/177/aid/601
请求参数说明:
名称 | 必填 | 类型 | 说明 | |
---|---|---|---|---|
key | 是 | string | 您申请的appKey | |
year | 是 | string | 指定年份,格式为YYYY,如:2015 |
返回参数说明:
名称 | 类型 | 说明 | |
---|---|---|---|
error_code | int | 返回状态码 | |
reason | string | 返回原因 | |
result | string | 返回实体内容 | |
holidaylist | string | 当年假期列表 | |
year | string | 年份 |
免费100次,总的来说非常不错。查看他的参数后开始正式写代码了
首先我使用的是beego的http库
package main
import (
"github.com/astaxie/beego/httplib"
"strconv"
"log"
)
var (
//个人appKey
AppKey = ""
)
func main() {
//从1970年到2070年
for i := 0; i <= 100; i++ {
year := strconv.Itoa(1970 + i) //年份
request := httplib.Get("http://v.juhe.cn/calendar/year?year=" + year + "&key=" + AppKey)
//保存为文件
if err := request.ToFile("data/" + year + ".json"); err != nil {
log.Println(err.Error())
}
log.Println(year + " 成功")
}
}