2021-01-04

遠船兄發表於2021-01-04

JAVA讀取天氣資訊,傳送簡訊

目錄

安裝 Java 開發環境 JDK 和 Java IDE 程式設計工具 Eclipse,基於 HTTP 協議(嚴格地說是 " REST 介面規範
")讀取網際網路上 web 服務網站實現: ——1.讀取指定城市的天氣預報資訊; ——2.給指定手機號碼傳送驗證碼;

程式碼

package Weather;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;

public class Weather_Report {
	
	public static void main(String args[]) throws Exception {
		weather();
		email();
	}
	
	//獲取天氣資訊
	public static void weather() throws Exception{
		//關鍵使用步驟:
		//0.	將傳送給圖靈機器人的文字轉化為URL編碼
		String question = URLEncoder.encode("重慶天氣", "UTF-8");
		//1. 	先準備一個URL類的物件 u
		URL url = new URL("https://api.jisuapi.com/iqa/query?appkey=62958a3a6ef3c56d&question="+question);
		//2. 	開啟伺服器連線,得到連線物件 conn
		URLConnection conn = url.openConnection();
		//3. 	獲取載入資料的位元組輸入流 is
		InputStream is = conn.getInputStream();
		//4.	將is裝飾為能一次讀取一行的字元輸入流 br
		BufferedReader br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
		//5.	載入一行資料
		String text = br.readLine();
		//6.	顯示
		System.out.println(text);
		//7.	釋放資源
		br.close();
	}
	
	//傳送驗證碼
	//number 是目標手機
	//code 是驗證碼
	public static void email() throws IOException{
        //關鍵使用步驟:
  		//1. 	先準備一個URL類的物件 u
  		URL url = new URL("https://itdage.com/kkb/kkbsms?key=xzk&number=***********&code=******");
  		//2. 	開啟伺服器連線,得到連線物件 conn
  		URLConnection conn = url.openConnection();
  		//3. 	獲取載入資料的位元組輸入流 is
  		InputStream is = conn.getInputStream();
  		//4.	將is裝飾為能一次讀取一行的字元輸入流 br
  		BufferedReader br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
  		//5.	載入一行資料
  		String text = br.readLine();
  		//6.	顯示
  		System.out.println(text);
  		//7.	釋放資源
  		br.close();
	}
}

1.如果要獲取北京的天氣,只需要將 String question = URLEncoder.encode(“重慶天氣”, “UTF-8”);
中的 “ 重慶 ” 二字改為 “ 北京 ” 即可,如:String question = URLEncoder.encode(“重慶天氣”,
“UTF-8”)
2.程式碼中自己設定 URL url = new
URL(“https://itdage.com/kkb/kkbsms?key=xzk&number=*****&code=”);
中的 number 和 code 的值

在這裡插入圖片描述