您现在的位置是: 首页 > 空气质量 空气质量
山西天气预报预警_山西天气预报查询接口
tamoadmin 2024-11-18 人已围观
简介1.如何使用百度天气预报API接口2.爱思助手下载天气预报要密码啥意思?3.天气预报接口:SmartWeather API中key用c#的计算方法4.c#窗体程序中怎么获取到从接口中得到的信息?天气预报://m.weather.cn/data/101230101.html5.如何用ja远程访问天气预报接口6.微信公众号怎么接入天气预报的接口?求大神帮助简单的方法,可以直接在servlet的doGe
1.如何使用百度天气预报API接口
2.爱思助手下载天气预报要密码啥意思?
3.天气预报接口:SmartWeather API中key用c#的计算方法
4.c#窗体程序中怎么获取到从接口中得到的信息?天气预报://m.weather.cn/data/101230101.html
5.如何用ja远程访问天气预报接口
6.微信公众号怎么接入天气预报的接口?求大神帮助
简单的方法,可以直接在servlet的doGet或doPost里面构建这个xml,然后写回响应就可以了。
需要搭建ja应用服务器如tomcat服务器,运行这个servlet就可以。
xml的构建对于Ja来说工具很多,JDOM, Dom4J等。
如果客户端要求用web service方式提供,就考虑Apache CXF这些Ja Web服务框架,不过一般没必要的。
如何使用百度天气预报API接口
中国国家气象局提供了获取所在城市天气预报信息接口。通过这个接口,我们就可以获取天气信息了。
关于获取天气预报的实例参考android学习手册,里面有源码。android学习手册包含9个章节,108个例子,源码文档随便看,例子都是可交互,可运行,源码用android studio目录结构,高亮显示代码,文档都用文档结构图显示,可以快速定位。360手机助手中下载,图标上有贝壳
中国国家气象局天气预报接口总共提供了三个:
://.weather.cn/data/sk/101010100.html
://.weather.cn/data/cityinfo/101010100.html
://m.weather.cn/data/101010100.html
注:上面接口2014.3.4日已不再更新。换成这个:://m.weather.cn/atad/101230201.html。各位看34楼。在此感谢tdwll和黄晓佳cobish。
最详细的信息来自第三个接口。上面url中的101010100是城市代码,这里是北京的城市代码。只需要改变城市代码,就可以得到所在城市的天气信息。笔者在福州,所以选择的城市代码是福州101230101。
在浏览器上输入url:://m.weather.cn/data/101230101.html得到信息,天气信息是json的数据格式,数据如下:
{"weatherinfo":{"city":"福州","city_en":"fuzhou","date_y":"2012年5月14日","date":"","week":"星期一","fchh":"08","cityid":"101230101","temp1":"29℃~23℃","temp2":"26℃~20℃","temp3":"24℃~20℃","temp4":"25℃~20℃","temp5":"24℃~21℃","temp6":"25℃~22℃","tempF1":"84.2℉~73.4℉","tempF2":"78.8℉~68℉","tempF3":"75.2℉~68℉","tempF4":"77℉~68℉","tempF5":"75.2℉~69.8℉","tempF6":"77℉~71.6℉","weather1":"阵雨转中雨","weather2":"中雨转小雨","weather3":"小雨","weather4":"小雨","weather5":"小雨转阵雨","weather6":"阵雨转小雨","img1":"3","img2":"8","img3":"8","img4":"7","img5":"7","img6":"99","img7":"7","img8":"99","img9":"7","img10":"3","img11":"3","img12":"7","img_single":"3","img_title1":"阵雨","img_title2":"中雨","img_title3":"中雨","img_title4":"小雨","img_title5":"小雨","img_title6":"小雨","img_title7":"小雨","img_title8":"小雨","img_title9":"小雨","img_title10":"阵雨","img_title11":"阵雨","img_title12":"小雨","img_title_single":"阵雨","wind1":"微风","wind2":"微风","wind3":"微风","wind4":"微风","wind5":"微风","wind6":"微风","fx1":"微风","fx2":"微风","fl1":"小于3级","fl2":"小于3级","fl3":"小于3级","fl4":"小于3级","fl5":"小于3级","fl6":"小于3级","index":"热","index_d":"天气较热,建议着短裙、短裤、短套装、T恤等夏季服装。年老体弱者宜着长袖衬衫和单裤。","index48":"暖","index48_d":"较凉爽,建议着长袖衬衫加单裤等春秋过渡装。年老体弱者宜着针织长袖衬衫、马甲和长裤。","index_uv":"弱","index48_uv":"最弱","index_xc":"不宜","index_tr":"适宜","index_co":"较不舒适","st1":"27","st2":"21","st3":"24","st4":"18","st5":"22","st6":"18","index_cl":"较不宜","index_ls":"不太适宜","index_ag":"不易发"}}
我们可以解析json数据去得到自己想用的天气信息。
天气信息解释:
[html] view plain copy print?
{?
"weatherinfo":{?
<!--?基本信息?-->?
"city":"福州",?
"city_en":"fuzhou",?
"date_y":"2012年5月14日",?
"date":"",?
"week":"星期一",?
"fchh":"08",?
"cityid":"101230101",?
<!--?从今天开始到第六天的每天的天气情况,这里的温度是摄氏温度?-->?
"temp1":"29℃~23℃","temp2":"26℃~20℃","temp3":"24℃~20℃","temp4":"25℃~20℃","temp5":"24℃~21℃","temp6":"25℃~22℃",?
<!--?从今天开始到第六天的每天的天气情况,这里的温度是华氏温度?-->?
"tempF1":"84.2℉~73.4℉","tempF2":"78.8℉~68℉","tempF3":"75.2℉~68℉","tempF4":"77℉~68℉","tempF5":"75.2℉~69.8℉","tempF6":"77℉~71.6℉",?
<!--?天气描述?-->?
"weather1":"阵雨转中雨","weather2":"中雨转小雨","weather3":"小雨","weather4":"小雨","weather5":"小雨转阵雨","weather6":"阵雨转小雨",?
<!--?天气描述序号?-->?
"img1":"3","img2":"8","img3":"8","img4":"7","img5":"7","img6":"99","img7":"7","img8":"99","img9":"7","img10":"3","img11":"3","img12":"7","img_single":"3",?
<!--?名称?-->?
"img_title1":"阵雨","img_title2":"中雨","img_title3":"中雨","img_title4":"小雨","img_title5":"小雨","img_title6":"小雨","img_title7":"小雨","img_title8":"小雨","img_title9":"小雨","img_title10":"阵雨","img_title11":"阵雨","img_title12":"小雨","img_title_single":"阵雨",?
<!--?风速描述?-->?
"wind1":"微风","wind2":"微风","wind3":"微风","wind4":"微风","wind5":"微风","wind6":"微风","fx1":"微风","fx2":"微风",?
<!--?风速级别描述?-->?
"fl1":"小于3级","fl2":"小于3级","fl3":"小于3级","fl4":"小于3级","fl5":"小于3级","fl6":"小于3级",?
<!--?今天穿衣指数?-->?
"index":"热",?
"index_d":"天气较热,建议着短裙、短裤、短套装、T恤等夏季服装。年老体弱者宜着长袖衬衫和单裤。",?
<!--?48小时穿衣指数?-->?
"index48":"暖","index48_d":"较凉爽,建议着长袖衬衫加单裤等春秋过渡装。年老体弱者宜着针织长袖衬衫、马甲和长裤。",?
<!--?紫外线及48小时紫外线?-->?
"index_uv":"弱","index48_uv":"最弱",?
<!--?洗车?-->?
"index_xc":"不宜",?
<!--?旅游?-->?
"index_tr":"适宜",、?
<!--?舒适指数?-->?
"index_co":"较不舒适",?
"st1":"27","st2":"21","st3":"24","st4":"18","st5":"22","st6":"18",?
<!--?晨练?-->?
"index_cl":"较不宜",?
<!--?晾晒?-->?
"index_ls":"不太适宜",?
<!--?过敏?-->?
"index_ag":"不易发"?
}?
}?
{
"weatherinfo":{
<!-- 基本信息 -->
"city":"福州",
"city_en":"fuzhou",
"date_y":"2012年5月14日",
"date":"",
"week":"星期一",
"fchh":"08",
"cityid":"101230101",
<!-- 从今天开始到第六天的每天的天气情况,这里的温度是摄氏温度 -->
"temp1":"29℃~23℃","temp2":"26℃~20℃","temp3":"24℃~20℃","temp4":"25℃~20℃","temp5":"24℃~21℃","temp6":"25℃~22℃",
<!-- 从今天开始到第六天的每天的天气情况,这里的温度是华氏温度 -->
"tempF1":"84.2℉~73.4℉","tempF2":"78.8℉~68℉","tempF3":"75.2℉~68℉","tempF4":"77℉~68℉","tempF5":"75.2℉~69.8℉","tempF6":"77℉~71.6℉",
<!-- 天气描述 -->
"weather1":"阵雨转中雨","weather2":"中雨转小雨","weather3":"小雨","weather4":"小雨","weather5":"小雨转阵雨","weather6":"阵雨转小雨",
<!-- 天气描述序号 -->
"img1":"3","img2":"8","img3":"8","img4":"7","img5":"7","img6":"99","img7":"7","img8":"99","img9":"7","img10":"3","img11":"3","img12":"7","img_single":"3",
<!-- 名称 -->
"img_title1":"阵雨","img_title2":"中雨","img_title3":"中雨","img_title4":"小雨","img_title5":"小雨","img_title6":"小雨","img_title7":"小雨","img_title8":"小雨","img_title9":"小雨","img_title10":"阵雨","img_title11":"阵雨","img_title12":"小雨","img_title_single":"阵雨",
<!-- 风速描述 -->
"wind1":"微风","wind2":"微风","wind3":"微风","wind4":"微风","wind5":"微风","wind6":"微风","fx1":"微风","fx2":"微风",
<!-- 风速级别描述 -->
"fl1":"小于3级","fl2":"小于3级","fl3":"小于3级","fl4":"小于3级","fl5":"小于3级","fl6":"小于3级",
<!-- 今天穿衣指数 -->
"index":"热",
"index_d":"天气较热,建议着短裙、短裤、短套装、T恤等夏季服装。年老体弱者宜着长袖衬衫和单裤。",
<!-- 48小时穿衣指数 -->
"index48":"暖","index48_d":"较凉爽,建议着长袖衬衫加单裤等春秋过渡装。年老体弱者宜着针织长袖衬衫、马甲和长裤。",
<!-- 紫外线及48小时紫外线 -->
"index_uv":"弱","index48_uv":"最弱",
<!-- 洗车 -->
"index_xc":"不宜",
<!-- 旅游 -->
"index_tr":"适宜",、
<!-- 舒适指数 -->
"index_co":"较不舒适",
"st1":"27","st2":"21","st3":"24","st4":"18","st5":"22","st6":"18",
<!-- 晨练 -->
"index_cl":"较不宜",
<!-- 晾晒 -->
"index_ls":"不太适宜",
<!-- 过敏 -->
"index_ag":"不易发"
}
}
爱思助手下载天气预报要密码啥意思?
百度API Key申请地址:://lbsyun.baidu/apiconsole/key
创建应用 如图:?
提交后得到API Key 如图:?
接口实例:://api.map.baidu/telematics/v3/weather?location=南昌&output=json&ak=你的API Key&mcode=你的数字签名SHA1;com.example.administrator.jsontest(包名)
接口参数说明
参数类型
参数名称
是否必须
具体描述
String location true 输入城市名或经纬度,城市名如北京或者131,经纬度格式为lng,lat坐标,如:location=116.305145,39.982368;全国值为all,返回省会城市自治区,港澳台天气情况多城市天气预报中间用“|”分隔,如:location=116.305145,39.982368|123.342323,36238945|...
String output false 输出的数据格式,默认为xml格式,当output设置为json时,输出的为json数据格式
String coord_type false 请求参数坐标类型,默认为gcj02经纬度坐标。允许的值为bd09ll、bd09mc、gcj02、wgs84;
返回的JSON数据
{
"error":0,
"status":"success",
"date":"2016-03-05",
"results":[
{
"currentCity":"北京",
"pm25":"144",
"index":[
{
"title":"穿衣",
"zs":"较冷",
"tipt":"穿衣指数",
"des":"建议着厚外套加毛衣等服装。年老体弱者宜着大衣、呢外套加羊毛衫。"},
{
"title":"洗车",
"zs":"不宜",
"tipt":"洗车指数",
"des":"不宜洗车,未来24小时内有扬沙或浮尘,如果在此期间洗车,极易很快蒙上新的灰尘。"},
{
"title":"旅游",
"zs":"一般",
"tipt":"旅游指数",
"des":"风稍大,扬沙或浮尘天气对能见度和空气质量都会有些影响,出行请注意交通安全和取适当的防尘措施。"},
{
"title":"感冒",
"zs":"易发",
"tipt":"感冒指数",
"des":"昼夜温差大,风力较强,易发生感冒,请注意适当增减衣服,加强自我防护避免感冒。"},
{
"title":"运动",
"zs":"较不宜",
"tipt":"运动指数",
"des":"有扬沙或浮尘,建议适当停止户外运动,选择在室内进行运动,以避免吸入更多沙尘,有损健康。"},
{
"title":"紫外线强度",
"zs":"最弱",
"tipt":"紫外线强度指数",
"des":"属弱紫外线辐射天气,无需特别防护。若长期在户外,建议涂擦SPF在8-12之间的防晒护肤品。"}
? ],
?"weather_data":[
?{
?"date":"周六 03月05日 (实时:12℃)", ?"dayPictureUrl":"://api.map.baidu/images/weather/day/fuchen.png",
"nightPictureUrl":"://api.map.baidu/images/weather/night/qing.png",
?"weather":"浮尘转晴",
?"wind":"北风4-5级",
?"temperature":"12 ~ -1℃"},
?{
?"date":"周日",
"dayPictureUrl":"://api.map.baidu/images/weather/day/duoyun.png",
"nightPictureUrl":"://api.map.baidu/images/weather/night/duoyun.png",
?"weather":"多云",
?"wind":"微风",
?"temperature":"10 ~ -3℃"},
?{
?"date":"周一", "dayPictureUrl":"://api.map.baidu/images/weather/day/duoyun.png",
"nightPictureUrl":"://api.map.baidu/images/weather/night/yin.png",
?"weather":"多云转阴",
?"wind":"微风",
?"temperature":"13 ~ 2℃"},
?{
?"date":"周二", "dayPictureUrl":"://api.map.baidu/images/weather/day/yin.png",
"nightPictureUrl":"://api.map.baidu/images/weather/night/duoyun.png",
?"weather":"阴转多云",
?"wind":"北风3-4级",
?"temperature":"6 ~ -1℃"}
?]}]}
3. ?我们来写个demo,代码如下:
package com.example.administrator.jsontest;
public class MainActivity extends Activity {
private Button button;
private TextView textView;
private Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case 0:
String re = (String) msg.obj;
textView.setText(re);
break;
}
}
};
@Override
protected void onCreate(Bundle sedInstanceState) {
super.onCreate(sedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button);
textView = (TextView) findViewById(R.id.textView);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.i("T", "点击了Button");
sendRequestWithHttpClient();
}
});
}
private void sendRequestWithHttpClient() {
new Thread(new Runnable() {
@Override
public void run() {
HttpURLConnection connection = null;
try {
URL url = new URL("://api.map.baidu/telematics/v3/weather?location=南昌&output=json&ak=8ixCCFzlBB617YX7tONI2P5B&mcode=1C:6B:42:33:E8:A6:DC:A2:11:6E:26:EC:84:BD:42:E3:8E:6B:57:9A;com.example.administrator.jsontest");
connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setConnectTimeout(5000);
connection.setReadTimeout(5000);
InputStream in = connection.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
StringBuilder response = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
response.end(line);
}
Log.i("T", response.toString()); parseJSONObjectOrJSONArray(response.toString());
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}).start();
}
//解析JSON数据
private void parseJSONObjectOrJSONArray(String jsonData) {
try {
String count = "";
JSONObject jsonObject = new JSONObject(jsonData);
JSONArray jsonArray = jsonObject.getJSONArray("results");
if (jsonArray.length() > 0) {
JSONObject object = jsonArray.getJSONObject(0);
String city = object.optString("currentCity");
JSONArray array = object.getJSONArray("weather_data");
for (int i = 0; i < array.length(); i++) {
JSONObject jsonObject1 = array.getJSONObject(i);
String dateDay = jsonObject1.optString("date");
String weather = jsonObject1.optString("weather");
String wind = jsonObject1.optString("wind");
String temperature = jsonObject1.optString("temperature");
count =count +"\n"+ dateDay + " " + weather + " " + wind + " " + temperature;
Log.i("AAA",count);
}
Message message = new Message();
message.what = 0;
message.obj = count;
handler.sendMessage(message);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}
4.?运行结果如下:?
天气预报接口:SmartWeather API中key用c#的计算方法
一、准备工作
1、原装连接数据线(这点非常重要!下面会讲述到);
2、选择电脑最好的USB接口(如台式机后端的,且是不松动的);
3、关闭电脑的屏幕保护(这并非是必须的,但由于有的密码获取的时间很长,为了便于观察,我个人还是建议如此);
4、最后的是最重要的:要有耐心(一般的时间都远大于刷机和越狱),要有信心(对爱思助手的信心)
二、获取开机密码的启动操作
1、连接手机到电脑(确保连接线紧固,以及USB接口不松动),开启爱思助手;
2、点击爱思助手“工具箱”中的“高级玩家”;
3、点击右边菜单中的“读设备开机密码”,爱思助手显示如下:
4、手动操作,进入DFU模式:爱思要想获取开机密码,必须要进入设备的IOS系统的内核,因此,必须要保证设备进入,并始终处在DFU模式的状态(进入DFU模式是坛友们必须掌握的最基本功,其方法爱思助手标注得十分清楚,不再赘述)!
三、获取开机密码的过程
设备一旦进入到DFU模式,爱思助手立即开始“获取开机密码”!显示如下:
与此同时,手机屏幕立即会出现白色数据不断向上翻滚的显示:
通过上图的显示,相信坛友们应该理解我为什么说必须保证“原装连接数据线”和“好的USB接口”了吧?!
朋友们只需要思考一个问题:“开机密码”的作用是什么?是防止他人去操作你的手机!这相当于是IOS给所有的应用都设置了一道“防火墙”!爱思助手必须要进入到IOS的内核才能去获取!而在这个过程中,爱思助手要通过USB接口和连接数据线,和设备之间进行“巨大数据量”的“交换”!稍微了解“数据传输”的坛友们都知道:在传输过程中,一个错码都不能出现!只要出现差错,就会导致“整个数据包”传输的失败!自然,也就无法获取开机密码了!
有朋友会问:我的设备和爱思能够连接,并且能够进入DFU模式,我的连接数据线和USB接口总应该是没问题的吧?!这个观点看似有理,但其实是大错特错的:
1、连接数据线是多芯的,芯线与芯线之间实际上就是一个电容,而多芯的就是多个电容分布的合成!只有原装的连接数据线才是“接口阻抗最匹配”的(山寨的是不可能匹配的)!
2、USB接口也是如此!计算机前端的USB接口由于经常被使用,会产生松动和接触不良!这都会导致“接口的阻抗不匹配”!
因此,接口阻抗的失配,并不会对简单的连接和小数据量的传输造成影响!但对于大数据量的传输来说,却是致命的!
我虽然年纪轻,但我的专业是数字传输。所以,我有这些基本的专业知识!
四、获取开机密码成功结束
在整个获取过程中,朋友只需要耐心等待,无须任何操作(虽然计算机可以多任务操作,但我个人不建议坛友们在此期间去操作其它的!计算机是个说不清道不白的东东,玩了多少年了,谁敢说能把它都吃透了)!爱思助手会自动为你干活的!最终,获取密码成功!爱思显示如下:
因为我是做实验,设置了非常简单的密码:1234。尽管如此,获取时间长达4分41秒!比我刷机、越狱的时间都长!
为了再次验证爱思助手的可靠性,我又设置了一个复杂的密码,爱思助手再次获取成功!显示如下:
这次长达26分53秒!现在坛友们应该清楚我为什么要说:要有足够的耐心,以及要对爱思助手有足够的信心了吧?!
五、给我们的启示
1、爱思助手获取开机密码,目前只支持iPhone 3GS和iPhone 4!对iPhone 4S和iPhone 5不支持!因为它们用的是A5处理器,CPU的架构完全不同!所以,使用iPhone 4S和iPhone 5的坛友们要慎重保存自己的开机密码!一旦忘记和丢失,爱思助手目前是爱莫能助的!
2、爱思助手获取开机密码,目前只支持“4位数密码”!坛友们只需要想一想:以0-9的10位数字为例,不重复的4位数的排列组合就有数千种(网上说是3000);而其中若有重复,4位数的排列组合就要近万种(网上说是9999)!坛友们设置密码务必不要超过4位数!否则爱思助手目前同样也是爱莫能助的!
3、爱思助手是计算机软件自动运行,没有任何人为因素掺杂在其中,是不会犯错误的!而坛友们的设备是千差万别的,并且在读取密码之前会有各种人为的干预和操作!比如说,一位坛友误信了网上的说法,把IOS系统有关密码的文件给删除了(虽然说IOS系统又自动添加了这个文件,但文件内容已经完全不一样了)!这样,爱思助手还能获取得到吗?!
因此:
(1)密码一旦忘记了,坛友们不要做任何其它的操作,而应该立即使用爱思助手来读取!
(2)如果获取失败,首先要检查(连接线、USB接口,包括计算机)和反省(有没有其它的误操作)
c#窗体程序中怎么获取到从接口中得到的信息?天气预报://m.weather.cn/data/101230101.html
string GetKey(string id, string privateKey, string areaId, string date, string type)
{
//使用SHA1的HMAC
HMAC hmac = HMACSHA1.Create();
var publicKey = "://webapi.weather.cn/data/?areaid={0}&type={1}&date={2}&id={3}";
var data = System.Text.Encoding.UTF8.GetBytes(string.Format(publicKey, areaId, type, date, id));
//密钥
var key = System.Text.Encoding.UTF8.GetBytes(privateKey);
hmac.Key = key;
//对数据进行签名
var signedData = hmac.ComputeHash(data);
return Convert.ToBase64String(signedData);
}
参考资料:://.cnblogs/aptdo2008/p/3566391.html
如何用ja远程访问天气预报接口
你这个不是接口,只是个网页地址。
我找到另外一个天气预报的接口:
://.webxml.cn/WebServices/WeatherWebService.asmx
只要在项目中添加Web引用:
按照这个做:
然后人就可以实例化这个对象:
调用对应的方法就可以获取接口中的信息了。
直接在IE或其它浏览器中打开这接口网址:
://.webxml.cn/WebServices/WeatherWebService.asmx
可以看到那些方法的使用说明。
还是不会就不应该了。为了这15分,可以加我好友再问。
微信公众号怎么接入天气预报的接口?求大神帮助
连接中央气象台的API URL url = new URL("://m.weather.cn/data/" + Cityid + ".html"); URLConnection connectionData = url.openConnection(); connectionData.setConnectTimeout(1000);
您好 天气是接中国天气网的API 址为: ://m.weather.cn/data/".$c_name.".html $c_name为城市代码号 您可以关注微信: 进行留言,希望能帮上你哦!
记得纳啊