免費節假日api接口使用教程-聚合數據

免費節假日api接口使用教程-聚合數據

文章目錄

    • 📖訪問官網
    • 🌰例子
    • 完整代碼
    • 🖊?最后總結

📖訪問官網

聚合數據

官網地址 https://dashboard.juhe.cn/home

點擊api

image-20231211161513282

image-20231211161555308

image-20231211161612526

接口文檔

image-20231211161701759

🌰例子

get方式

image-20231211161910701

curl -k -i -d “key=您申請的AppKey&date=2021-05-09” http://apis.juhe.cn/fapig/calendar/day

返回結果

{"reason": "success","result": {"date": "2021-05-09","week": "星期日","statusDesc": "周末","status": null,"animal": "牛","avoid": "訂婚.上梁.納采.蓋屋.開倉","cnDay": "日","day": "9","desc": "母親節","gzDate": "丁巳","gzMonth": "癸巳","gzYear": "辛丑","isBigMonth": "1","lDate": "廿八","lMonth": "三","lunarDate": "28","lunarMonth": "3","lunarYear": "2021","month": "5","suit": "搬家.裝修.開業.結婚.入宅.領證.開工.動土.安床.出行.安葬.開張.作灶.旅游.求嗣.赴任.修造.祈福.祭祀.解除.開市.牧養.納財.納畜.開光.嫁娶.移徙.經絡.立券.求醫.豎柱.栽種.齋醮.求財","term": "","value": "母親節","year": "2021"},"error_code": 0
}

完整代碼

import net.sf.json.JSONObject;import java.io.*;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
import java.util.Map;
import java.util.HashMap;public class ApiDemo {public static void main(String[] args) {// 發送http請求的urlString url = "http://apis.juhe.cn/fapig/calendar/day";Map<String, String> params = new HashMap<String, String>();params.put("key", "您申請的AppKey"); // 在個人中心->我的數據,接口名稱上方查看params.put("date", "2021-05-09"); // 指定日期,格式為yyyy-MM-dd,如:2021-05-01String paramsStr = urlencode(params);System.out.println(paramsStr);String response = doGet(url,paramsStr);// // post請求// String response = doPost(url,paramsStr);// 輸出請求結果System.out.println(response);try {// 解析請求結果,json:JSONObject jsonObject = JSONObject.fromObject(response);System.out.println(jsonObject);// 具體返回示例值,參考返回參數說明、json返回示例} catch (Exception e) {e.printStackTrace();}}// 將map型轉為請求參數型public static String urlencode(Map<String, String> data) {StringBuilder sb = new StringBuilder();for (Map.Entry i : data.entrySet()) {try {sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue() + "", "UTF-8")).append("&");} catch (UnsupportedEncodingException e) {e.printStackTrace();}}return sb.toString();}/*** get方式的http請求** @param httpUrl 請求地址* @param paramStr 請求參數* @return 返回結果*/public static String doGet(String httpUrl,String paramStr) {HttpURLConnection connection = null;InputStream inputStream = null;BufferedReader bufferedReader = null;String result = null;// 返回結果字符串try {httpUrl += "?"+paramStr;// 創建遠程url連接對象URL url = new URL(httpUrl);// 通過遠程url連接對象打開一個連接,強轉成httpURLConnection類connection = (HttpURLConnection) url.openConnection();// 設置連接方式:getconnection.setRequestMethod("GET");// 設置連接主機服務器的超時時間:15000毫秒connection.setConnectTimeout(15000);// 設置讀取遠程返回的數據時間:60000毫秒connection.setReadTimeout(60000);// 設置請求頭connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");// 發送請求connection.connect();// 通過connection連接,獲取輸入流if (connection.getResponseCode() == 200) {inputStream = connection.getInputStream();// 封裝輸入流,并指定字符集bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));// 存放數據StringBuilder sbf = new StringBuilder();String temp;while ((temp = bufferedReader.readLine()) != null) {sbf.append(temp);sbf.append(System.getProperty("line.separator"));}result = sbf.toString();}} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {// 關閉資源if (null != bufferedReader) {try {bufferedReader.close();} catch (IOException e) {e.printStackTrace();}}if (null != inputStream) {try {inputStream.close();} catch (IOException e) {e.printStackTrace();}}if (connection != null) {connection.disconnect();// 關閉遠程連接}}return result;}/*** post方式的http請求** @param httpUrl 請求地址* @param paramStr   請求參數* @return 返回結果*/public static String doPost(String httpUrl, String paramStr) {HttpURLConnection connection = null;InputStream inputStream = null;OutputStream outputStream = null;BufferedReader bufferedReader = null;String result = null;try {URL url = new URL(httpUrl);// 通過遠程url連接對象打開連接connection = (HttpURLConnection) url.openConnection();// 設置連接請求方式connection.setRequestMethod("POST");// 設置連接主機服務器超時時間:15000毫秒connection.setConnectTimeout(15000);// 設置讀取主機服務器返回數據超時時間:60000毫秒connection.setReadTimeout(60000);// 默認值為:false,當向遠程服務器傳送數據/寫數據時,需要設置為trueconnection.setDoOutput(true);// 設置傳入參數的格式:請求參數應該是 name1=value1&name2=value2 的形式。connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");// 通過連接對象獲取一個輸出流outputStream = connection.getOutputStream();// 通過輸出流對象將參數寫出去/傳輸出去,它是通過字節數組寫出的outputStream.write(paramStr.getBytes());// 通過連接對象獲取一個輸入流,向遠程讀取if (connection.getResponseCode() == 200) {inputStream = connection.getInputStream();// 對輸入流對象進行包裝:charset根據工作項目組的要求來設置bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));StringBuilder sbf = new StringBuilder();String temp;// 循環遍歷一行一行讀取數據while ((temp = bufferedReader.readLine()) != null) {sbf.append(temp);sbf.append(System.getProperty("line.separator"));}result = sbf.toString();}} catch (MalformedURLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {// 關閉資源if (null != bufferedReader) {try {bufferedReader.close();} catch (IOException e) {e.printStackTrace();}}if (null != outputStream) {try {outputStream.close();} catch (IOException e) {e.printStackTrace();}}if (null != inputStream) {try {inputStream.close();} catch (IOException e) {e.printStackTrace();}}if (connection != null) {connection.disconnect();}}return result;}
}

🖊?最后總結

🖲要熟練掌握技巧,一定多多堅持練習:騏驥一躍,不能十步;駑馬十駕,功在不舍

搞笑點贊

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/213866.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/213866.shtml
英文地址,請注明出處:http://en.pswp.cn/news/213866.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

解決Git提交錯誤分支

如果 Git 提交到錯誤的分支&#xff0c;可以通過以下步驟將其轉移到正確的分支上&#xff1a; 1.檢查當前所在的分支&#xff0c;可以通過 git branch 命令查看。 git branch2.切換到正確的分支&#xff0c;可以通過 git checkout <正確的分支名> 命令進行切換。 git …

vue使用echarts顯示中國地圖

項目引入echarts以后&#xff0c;在頁面創建canvas標簽 引入一個公共js文件&#xff08;下面這段代碼就是china.js文件&#xff09; (function (root, factory) {if (typeof define function && define.amd) {// AMD. Register as an anonymous module.define([ex…

【EXCEL】折線圖添加垂直x軸的豎線|畫圖

相關鏈接&#xff1a;excel 添加垂直豎向直線 如何在Excel中添加水平和垂直線&#xff1f; 因為加輔助列有點不習慣&#xff0c;已經有分位數橫坐標了&#xff0c;想著試下用散點圖的誤差線畫 效果圖&#xff1a; 步驟&#xff1a; s1&#xff1a;隨便框選兩列數據–>插入(…

大創項目推薦 卷積神經網絡手寫字符識別 - 深度學習

文章目錄 0 前言1 簡介2 LeNet-5 模型的介紹2.1 結構解析2.2 C1層2.3 S2層S2層和C3層連接 2.4 F6與C5層 3 寫數字識別算法模型的構建3.1 輸入層設計3.2 激活函數的選取3.3 卷積層設計3.4 降采樣層3.5 輸出層設計 4 網絡模型的總體結構5 部分實現代碼6 在線手寫識別7 最后 0 前言…

深入理解JavaScript異步編程與Promise

異步編程的背景 在Web開發中&#xff0c;異步編程是為了解決JavaScript的單線程執行模型導致的阻塞問題。異步編程允許程序在等待某些操作完成的同時&#xff0c;繼續執行其他任務&#xff0c;提高了程序的效率和響應速度。 回調地獄與Promise的誕生 回調地獄是異步編程中一…

Unity中實現ShaderToy卡通火(一)

文章目錄 前言一、準備好我們的后處理基礎腳本1、C#&#xff1a;2、Shader&#xff1a; 二、開始逐語句對ShaderToy進行轉化1、首先&#xff0c;找到我們的主函數 mainImage2、其余的方法全部都是在 mainImage 函數中調用的方法3、替換后的代碼(已經沒報錯了&#xff0c;都是效…

智能優化算法應用:基于正余弦算法3D無線傳感器網絡(WSN)覆蓋優化 - 附代碼

智能優化算法應用&#xff1a;基于正余弦算法3D無線傳感器網絡(WSN)覆蓋優化 - 附代碼 文章目錄 智能優化算法應用&#xff1a;基于正余弦算法3D無線傳感器網絡(WSN)覆蓋優化 - 附代碼1.無線傳感網絡節點模型2.覆蓋數學模型及分析3.正余弦算法4.實驗參數設定5.算法結果6.參考文…

基于單個參數線性回歸的機器學習代碼

本文為學習吳恩達版本機器學習教程的代碼整理&#xff0c;使用的數據集為https://github.com/fengdu78/Coursera-ML-AndrewNg-Notes/blob/f2757f85b99a2b800f4c2e3e9ea967d9e17dfbd8/code/ex1-linear%20regression/ex1data1.txt 將數據集和py代碼放到同一目錄中&#xff0c;使…

2023最新八股文前端面試題

第一章 Css 1.說一下CSS的盒模型。 在HTML頁面中的所有元素都可以看成是一個盒子盒子的組成:內容content、內邊距padding、邊框border、外邊距margin盒模型的類型: 標準盒模型 margin border padding content IE盒模型 margin content(border padding) 控制盒模型的模式…

淘寶api接口測試方式(item_get-獲得淘寶商品詳情)

注冊淘寶開放平臺賬號&#xff1a;首先&#xff0c;你需要在淘寶開放平臺上注冊一個賬號&#xff0c;并創建一個應用。獲取App Key和Secret Key&#xff1a;在創建應用后&#xff0c;你會獲得App Key和Secret Key&#xff0c;這些憑證將用于調用API。了解淘寶商品詳情接口&…

【開源】基于Vue+SpringBoot的免稅店商城管理系統

文末獲取源碼&#xff0c;項目編號&#xff1a; S 069 。 \color{red}{文末獲取源碼&#xff0c;項目編號&#xff1a;S069。} 文末獲取源碼&#xff0c;項目編號&#xff1a;S069。 目錄 一、摘要1.1 項目介紹1.2 項目錄屏 二、系統設計2.1 功能模塊設計2.2 研究方法 三、系統…

什么是圖片懶加載(image lazy loading)?它的作用是什么?

聚沙成塔每天進步一點點 ? 專欄簡介 前端入門之旅&#xff1a;探索Web開發的奇妙世界 歡迎來到前端入門之旅&#xff01;感興趣的可以訂閱本專欄哦&#xff01;這個專欄是為那些對Web開發感興趣、剛剛踏入前端領域的朋友們量身打造的。無論你是完全的新手還是有一些基礎的開發…

如何使用vue開發vscode插件

以下是一個簡單的示例&#xff0c;演示如何使用Vue和VSCode的Webview API來開發一個簡單的VSCode插件&#xff1a; 創建一個VSCode插件項目 首先&#xff0c;你需要創建一個VSCode插件項目。你可以使用VSCode的插件生成器來快速創建一個基本的項目結構。從VSCode的命令面板中運…

【Flutter】graphic圖表實現tooltip一段時間后自動隱藏

概述 graphic圖表中提供了自定義tooltip的事件&#xff0c;可通過selections中on和clear配置手勢選項和可識別設備&#xff0c;默認情況下tooltip需要雙擊隱藏&#xff0c;但這并不符合我們的需求。通過調研發現&#xff0c;若想實現tooltip隔幾秒后隱藏&#xff0c;可通過Str…

3DMax物理畫筆物體填充放置繪制畫筆插件安裝使用方法

3DMax物理畫筆物體填充放置繪制畫筆插件&#xff0c;允許您使用筆刷以非常自然的方式用物品快速填充場景&#xff0c;并使用剛體模擬自動放置它們。 無論你是從事建筑、游戲電影還是商業。。。等等&#xff0c;你經常需要用一些物品為你的場景添加細節。手工放置它們是乏味的&…

Threejs發光閃爍提示特效

一、導語 發光閃爍特效應該在我們的項目中是經常需要去封裝的一個特效吧&#xff0c;一般用于點擊選擇&#xff0c;選中物體&#xff0c;或者一些特效加持于中心物體&#xff0c;物體碰撞檢測后的發光特效等等 二、分析 我們可以合理的使用后處理特效&#xff0c;上步驟&am…

hive查看數據庫出現org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

FAILED: HiveException java,lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient 在啟動hive后&#xff0c;使用show databses查看數據庫時發現&#xff0c;出現了這個錯誤 情況一&#xff1a; 根據搜索查找以及…

Docker一 | Docker的基本使用

目錄 Docker的基本使用 常用命令 啟動Docker 查看Docker的運行狀態 重啟Docker 停止Docker服務 查看命令相關信息 鏡像命令 列出本地主機上的鏡像 搜索某個鏡像的名稱 拉取指定的鏡像到本地 查看鏡像/容器/數據卷所占的空間 刪除某個鏡像 容器命令 啟動容器 列出…

數字電路基礎知識系列(六)之LC濾波器的基礎知識

LC濾波器&#xff0c;是指將電感(L)與電容器 ©進行組合設計構成的濾波電路&#xff0c;可去除或通過特定頻率的無源器件。電容器具有隔直流通交流&#xff0c;且交流頻率越高越容易通過的特性。而電感則具有隔交流通直流&#xff0c;且交流頻率越高越不易通過的特性。因此…

linux如何使用Xshell遠程連接

簡介&#xff1a;本文的一切條件基于redhat的linux操作系統。 目錄 1、創建虛擬機&#xff1a; 2、使用命令查看網段信息 拓展1&#xff1a;&#xff08;若網卡上沒有網段信息&#xff0c;可以使用任意兩種方法&#xff09;&#xff1a; 準備工作&#xff1a; 1、點擊左…