//通过中国天气api调用
private String getWeatherInfo2(){
StringBuilder info = new StringBuilder();
try {
DefaultHttpClient httpclient = new DefaultHttpClient();
HttpGet httget = new HttpGet("http://m.weather.com.cn/data/101050101.html");
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String responseBody = httpclient.execute(httget, responseHandler);
System.out.println(responseBody);
JsonParser jp = new JsonParser();
JsonElement jse = jp.parse(responseBody);
JsonObject jso = jse.getAsJsonObject().get("weatherinfo").getAsJsonObject();
// String updTime = jso.get("fchh").getAsString();
// if(updTime != null){
// //温度
// String j = jso.get("temp1").getAsString();//今天
// String m = jso.get("temp2").getAsString();//明天
// //天气情况
// String j_weather = jso.get("weather1").getAsString();//今天
// String m_weather = jso.get("weather2").getAsString();//明天
// //风向风力
// String j_wind = jso.get("wind1").getAsString();//今天
// String m_wind = jso.get("wind2").getAsString();//明天
// info.append("今天:").append(j).append(" ").append(j_weather).append(" ").append(j_wind).append("\n");
// info.append("明天:").append(m).append(" ").append(m_weather).append(" ").append(m_wind).append("\n");
// }
String updTime = jso.get("fchh").getAsString();
if(updTime != null){
if(!updTime.trim().equals("18")){
//温度
String j = jso.get("temp1").getAsString();//今天
String m = jso.get("temp2").getAsString();//明天
//天气情况
String j_weather = jso.get("weather1").getAsString();//今天
String m_weather = jso.get("weather2").getAsString();//明天
//风向风力
String j_wind = jso.get("wind1").getAsString();//今天
String m_wind = jso.get("wind2").getAsString();//明天
info.append("今天:").append(j).append(" ").append(j_weather).append(" ").append(j_wind).append("\n");
info.append("明天:").append(m).append(" ").append(m_weather).append(" ").append(m_wind).append("\n");
}else{
//18
//温度
String temp1 = jso.get("temp1").getAsString();//今天
String temp2 = jso.get("temp2").getAsString();//今天
String temp3 = jso.get("temp3").getAsString();//今天
String j = temp1.split("~")[1] + "~" + temp2.split("~")[0];
String m = temp2.split("~")[1] + "~" + temp3.split("~")[0];//明天
//天气情况
String weather1 = jso.get("weather1").getAsString();
String weather2 = jso.get("weather2").getAsString();
String weather3 = jso.get("weather3").getAsString();
String j_weather = "";
String j_weather_part1 = "";
String j_weather_part2 = "";
//判断是否有转
if(weather1.indexOf("转") > 0){
//有
j_weather_part1 = weather1.split("转")[1];
}else{
j_weather_part1 = weather1;
}
if(weather2.indexOf("转") > 0){
//有
j_weather_part2 = weather2.split("转")[0];
}else{
j_weather_part2 = weather2;
}
if(j_weather_part1.equalsIgnoreCase(j_weather_part2)){
j_weather = j_weather_part1;//今天
}else{
j_weather = j_weather_part1 + "转" + j_weather_part2;//今天
}
String m_weather = "";
String m_weather_part1 = "";
String m_weather_part2 = "";
//判断是否有转
if(weather2.indexOf("转") > 0){
//有
m_weather_part1 = weather2.split("转")[1];
}else{
m_weather_part1 = weather2;
}
if(weather3.indexOf("转") > 0){
//有
m_weather_part2 = weather3.split("转")[0];
}else{
m_weather_part2 = weather3;
}
if(m_weather_part1.equalsIgnoreCase(m_weather_part2)){
m_weather = m_weather_part1;//今天
}else{
m_weather = m_weather_part1 + "转" + m_weather_part2;//明天
}
//风向风力
String j_wind = jso.get("wind2").getAsString();//今天
String m_wind = jso.get("wind3").getAsString();//明天
info.append("今天:").append(j).append(" ").append(j_weather).append(" ").append(j_wind).append("\n");
info.append("明天:").append(m).append(" ").append(m_weather).append(" ").append(m_wind).append("\n");
}
}
} catch (Exception e) {
}
return info.toString();
}
分享到:
相关推荐
Spring Boot项目:使用第三方天气API接口实现天气预报功能;使用redis缓存数据库进行数据缓存 接口示例:http://t.weather.sojson.com/api/weather/city/101010100
项目能成功运行,jar包齐全,天气来源:中央气象台
Android 实现城市名称和编码的选择,省份与城市的联动 并且获得城市编号 为后面天气预报调用Api 提供帮助.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
本程序实现了android手机上的天气预报的功能,可以根据输入的城市名称,调用google weather API 接口实现想要找的城市未来四天内的天气预报功能!
主要介绍了java调用中国天气网api获得天气预报信息的方法,可实现调用温度、风力风向及近期天气状况等功能,具有一定参考借鉴价值,需要的朋友可以参考下
程序功能实现了访问API、JSON数据解析、下拉刷新、定位城市、启动页加载等功能。初学安卓者可以参考一下。由于使用的是聚合的天气预报API,下载后不能直接使用,需要先去聚合后台(https://www.juhe.cn/)注册一个...
大陆仔天气预报是一个纯JS版的天气预报,调用了新浪的天气预报接口实现。具体功能如下: 支持根据用户IP来显示当地的天气预报 (使用了魔镜的 API) 支持用户搜索中国和国外城市的天气预报 将能够查询...
天气预报查询接口API,在这里我使用的是国家气象局天气预报接口 使用较多的还有:新浪天气预报接口、百度天气预报接口、google天气接口、Yahoo天气接口等等。 1、查询方式 根据地名查询各城市天气情况 2.请求URL地址...
查询天气预报在APP中常用的一个常用功能,本文实例讲述了java调用中国天气网api获得天气预报信息的方法。分享给大家供大家参考。
大陆仔天气预报是一个纯JS版的天气预报,调用了新浪的天气预报接口实现。具体功能如下: ● 支持根据用户IP来显示当地的天气预报 (使用了魔镜的 API) ● 支持用户搜索中国和国外城市的天气预报 ● 将能够查询未来...
大陆仔天气预报是一个纯JS版的天气预报,调用了新浪的天气预报接口实现。具体功能如下: ● 支持根据用户IP来显示当地的天气预报 (使用了魔镜的 API) ● 支持用户搜索中国和国外城市的天气预报 ● 将能够查询...
今天我们给大家分享一个使用微信消息模板每日定时推送早安问候语和天气预报的功能,学会了,块给你女朋友安排上吧 功能点: 1、微信公众平台申请账号及微信开放接口的调用。 2、百度地图天气API接口的调用。 3、...
主要是调用第三方服务查询天气预报和火车飞机时刻表,天气预报包含定位功能,利用百度API定位,第三方服务调用Webxml的服务,需注册获取id才能获取服务。
程序结合易语言扩展界面支持库和易语言模块,调用API函数实现天气预报功能。易语言例程还使用到易语言互联网支持库,易语言多线程支持库,应用接口支持库。
摘要:脚本资源,Ajax/JavaScript,大陆仔,天气预报 大陆仔天气预报是一个纯JS版的天气预报,调用了新浪的天气预报接口实现。具体功能如下: 支持根据用户IP来显示当地的天气预报 (使用了魔镜的 API) 支持用户...
android调用最新高德地图api实现天气预报,及位置定位功能等
源码结合易语言超文本浏览框,调用API函数实现天气预报功能。
该应用通过调用天气API,为用户提供实时天气信息和未来天气预报,帮助用户随时掌握天气动态。 项目目标: 熟悉Swift编程语言和iOS开发环境。 实现一个功能齐全、界面友好的天气预报应用。 提升移动端开发和网络...
程序结合易语言扩展界面支持库,调用API函数实现桌面天气预报功能。易语言例程还使用到易语言互联网支持库,编码转换支持库,超文本浏览框支持库,应用接口支持库。