C# 调用百度api接口获取节假日
生活随笔
收集整理的這篇文章主要介紹了
C# 调用百度api接口获取节假日
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
百度接口api:https://sp0.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?query={date}&resource_id=6018? ?--date為查詢的日期(如:2019-9)
接口返回的部分參數類:
public class Calendar{public int status { get; set; }public List<CalendarData> data { get; set; }}public class CalendarData{//public Holiday holiday { get; set; }public List<Holiday> holiday { get; set; }}public class Holiday{public string desc { get; set; }public string festival { get; set; }public List<HolidayList> list { get; set; }public string name { get; set; }public string rest { get; set; }}public class HolidayList{public string date { get; set; }/// <summary>/// 1休息2上班/// </summary>public int status { get; set; }public string remark{get{return status == 1 ? "休假" : "上班";}}}public class Calendar2{public int status { get; set; }public List<CalendarData2> data { get; set; }}public class CalendarData2{public Holiday holiday { get; set; }} View Code獲取節(jié)假日
private static void GetHoliday(string date){WebClient client = new WebClient();client.Encoding = Encoding.UTF8;var url = $"https://sp0.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?query={date}&resource_id=6018";var jsondata = client.DownloadString(url);try{var model = JsonConvert.DeserializeObject<Calendar>(jsondata);foreach (var item in model.data){foreach (var holiday in item.holiday){foreach (var day in holiday.list){Console.WriteLine($"日期:{day.date},{day.remark}");}}}}catch (Exception){var model = JsonConvert.DeserializeObject<Calendar2>(jsondata);foreach (var item in model.data){if (item.holiday != null && item.holiday.list != null){foreach (var day in item.holiday.list){Console.WriteLine($"日期:{day.date},{day.remark}");}}}}//JObject jobject = JObject.Parse(json);//var holiday = jobject["data"][0]["holiday"];//if (holiday != null && holiday.Children().Count() > 0)//{// foreach (dynamic item in holiday.Children().ToList())// {// foreach (dynamic day in item.list)// {// string remark = day.status == 1 ? "休假" : "上班";// Console.WriteLine($"日期:{day.date},{remark}");// }// }//}} View Code注意: 接口返回的參數中有些?holiday 不一定全是集合
demo代碼下載地址:demo
轉載于:https://www.cnblogs.com/mybk/p/11200204.html
總結
以上是生活随笔為你收集整理的C# 调用百度api接口获取节假日的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 创建自己的手册 um命令
- 下一篇: 学编程C#之制作一个2D游戏(愤怒的小鸟