一、请求数据

首先需要能有取得天气数据的接口,这样的接口网上有很多。比如google, yahoo,天气网都提供天气接口

方倍工作室的API已经能提供全国各地的天气预报,使用方倍的API无需再建立城市对应关系表

使用方式为直接在URL中提交城市名称即可,如果找不到城市名称,请先做urlencode

调用url方法:

http://api2.sinaapp.com/search/weather/?appkey=0020130430&appsecert=fa6095e113cd28fd&reqtype=text&keyword=上海
//或者做一次urlencode后再提交
http://api2.sinaapp.com/search/weather/?appkey=0020130430&appsecert=fa6095e113cd28fd&reqtype=text&keyword=%E6%B7%B1%E5%9C%B3

返回格式如下:(返回中自带换行\n操作,不用自己再添加)

{"errcode": "0","msgtype": "text","text": {"content": "【湘潭】天气实况 温度:12℃ 湿度:59% 风速:西北风3级\n03月10日 周日 10℃~21℃ 阴转多云 北风转南风小于3级\n03月11日 周一 13℃~28℃ 多云 南风小于3级\n03月12日 周二 10℃~22℃ 小雨转阴 北风小于3级\n技术支持 方倍工作室"}
}

一个完整的请求类似如下:

$url = "http://api2.sinaapp.com/search/weather/?appkey=0020130430&appsecert=fa6095e113cd28fd&reqtype=text&keyword=%E6%B7%B1%E5%9C%B3";
$weatherJson = file_get_contents($url);
$weather = json_decode($weatherJson, true);
$contentStr = $weather['text']['content'];

如果使用城市名+天气方式查询,则先进行城市名提取

else if (substr($keyword, -6, strlen($keyword)) == "天气"){$cityname = trim(substr($keyword, 0, strlen($keyword) - 6));

三,效果演示

使用城市名称查询天气预报

使用拼音查询天气预报

使用电话区号查询天气预报

使用邮编查询天气预报

使用地址位置查询天气预报

使用语音(声音)查询天气预报

欢迎关注方倍工作室微信,

空气质量PM2.5等 请参考 微信公众平台消息接口开发(32)空气质量指数查询

附官方接口:

中国天气网天气预报接口总共提供了三个:

http://www.weather.com.cn/data/sk/101010100.html
http://www.weather.com.cn/data/cityinfo/101010100.html
http://m.weather.com.cn/data/101010100.html
最详细的信息来自第三个接口。上面url中的101010100是城市代码,这里是北京的城市代码。只需要改变城市代码,就可以得到所在城市的天气信息。

在浏览器上输入url:http://m.weather.com.cn/data/101010100.html得到信息,天气信息是json的数据格式,数据如下:

{"weatherinfo":{"city":"北京","city_en":"beijing","date_y":"2013年6月21日","date":"","week":"星期五","fchh":"11","cityid":"101010100","temp1":"32℃~21℃","temp2":"25℃~20℃","temp3":"30℃~22℃","temp4":"30℃~23℃","temp5":"30℃~23℃","temp6":"30℃~23℃","tempF1":"89.6℉~69.8℉","tempF2":"77℉~68℉","tempF3":"86℉~71.6℉","tempF4":"86℉~73.4℉","tempF5":"86℉~73.4℉","tempF6":"86℉~73.4℉","weather1":"多云转阴","weather2":"阵雨转多云","weather3":"多云","weather4":"多云转阴","weather5":"阴转阵雨","weather6":"阵雨转多云","img1":"1","img2":"2","img3":"3","img4":"1","img5":"1","img6":"99","img7":"1","img8":"2","img9":"2","img10":"3","img11":"3","img12":"1","img_single":"1","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":"","index48":"","index48_d":"","index_uv":"","index48_uv":"","index_xc":"较适宜","index_tr":"适宜","index_co":"较不舒适","st1":"32","st2":"22","st3":"21","st4":"21","st5":"31","st6":"23","index_cl":"适宜","index_ls":"适宜","index_ag":"极不易发"}}

JSON格式解释

{"weatherinfo":{<!-- 基本信息 -->"city":"北京","city_en":"beijing","date_y":"2013年6月21日","date":"","week":"星期五","fchh":"08","cityid":"101010100",<!-- 从今天开始到第六天的每天的天气情况,这里的温度是摄氏温度 -->"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":"不易发"}
}

城市代码:

直辖市"北京","上海","天津","重庆""101010100","101020100","101030100","101040100"特别行政区"香港","澳门""101320101","101330101"黑龙江"哈尔滨","齐齐哈尔","牡丹江","大庆","伊春","双鸭山","鹤岗","鸡西","佳木斯","七台河","黑河","绥化","大兴安岭""101050101","101050201","101050301","101050901","101050801","101051301","101051201","101051101","101050401","101051002","101050601","101050501","101050701"吉林"长春","延吉","吉林","白山","白城","四平","松原","辽源","大安","通化""101060101","101060301","101060201","101060901","101060601","101060401","101060801","101060701","101060603","101060501"辽宁"沈阳","大连","葫芦岛","盘锦","本溪","抚顺","铁岭","辽阳","营口","阜新","朝阳","锦州","丹东","鞍山""101070101","101070201","101071401","101071301","101070501","101070401","101071101","101071001","101070801","101070901","101071201","101070701","101070601","101070301"内蒙古"呼和浩特","呼伦贝尔","锡林浩特","包头","赤峰","海拉尔","乌海","鄂尔多斯","通辽""101080101","101081000","101080901","101080201","101080601","101081001","101080301","101080701","101080501"河北"石家庄","唐山","张家口","廊坊","邢台","邯郸","沧州","衡水","承德","保定","秦皇岛""101090101","101090501","101090301","101090601","101090901","101091001","101090701","101090801","101090402","101090201","101091101"河南"郑州","开封","洛阳","平顶山","焦作","鹤壁","新乡","安阳","濮阳","许昌","漯河","三门峡","南阳","商丘","信阳","周口","驻马店""101180101","101180801","101180901","101180501","101181101","101181201","101180301","101180201","101181301","101180401","101181501","101181701","101180701","101181001","101180601","101181401","101181601"山东"济南","青岛","淄博","威海","曲阜","临沂","烟台","枣庄","聊城","济宁","菏泽","泰安","日照","东营","德州","滨州","莱芜","潍坊""101120101","101120201","101120301","101121301","101120710","101120901","101120501","101121401","101121701","101120701","101121001","101120801","101121501","101121201","101120401","101121101","101121601","101120601"山西"太原","阳泉","晋城","晋中","临汾","运城","长治","朔州","忻州","大同","吕梁""101100101","101100301","101100601","101100401","101100701","101100801","101100501","101100901","101101001","101100201","101101101"江苏"南京","苏州","昆山","南通","太仓","吴县","徐州","宜兴","镇江","淮安","常熟","盐城","泰州","无锡","连云港","扬州","常州","宿迁""101190101","101190401","101190404","101190501","101190408","101190406","101190801","101190203","101190301","101190901","101190402","101190701","101191201","101190201","101191001","101190601","101191101","101191301"安徽"合肥","巢湖","蚌埠","安庆","六安","滁州","马鞍山","阜阳","宣城","铜陵","淮北","芜湖","毫州","宿州","淮南","池州""101220101","101221601","101220201","101220601","101221501","101221101","101220501","101220801","101221401","101221301","101221201","101220301","101220901","101220701","101220401","101221701"陕西"西安","韩城","安康","汉中","宝鸡","咸阳","榆林","渭南","商洛","铜川","延安""101110101","101110510","101110701","101110801","101110901","101110200","101110401","101110501","101110601","101111001","101110300"宁夏"银川","固原","中卫","石嘴山","吴忠""101170101","101170401","101170501","101170201","101170301"甘肃"兰州","白银","庆阳","酒泉","天水","武威","张掖","甘南","临夏","平凉","定西","金昌""101160101","101161301","101160401","101160801","101160901","101160501","101160701","101050204","101161101","101160301","101160201","101160601"青海"西宁","海北","海西","黄南","果洛","玉树","海东","海南""101150101","101150801","101150701","101150301","101150501","101150601","101150201","101150401"湖北"武汉","宜昌","黄冈","恩施","荆州","神农架","十堰","咸宁","襄阳","孝感","随州","黄石","荆门","鄂州"
"101200101","101200901","101200501","101201001","101200801","101201201","101201101","101200701","101200201","101200401","101201301","101200601","101201401","101200301"湖南"长沙","邵阳","常德","郴州","吉首","株洲","娄底","湘潭","益阳","永州","岳阳","衡阳","怀化","韶山","张家界""101250101","101250901","101250601","101250501","101251501","101250301","101250801","101250201","101250701","101251401","101251001","101250401","101251201","101250202","101251101"浙江"杭州","湖州","金华","宁波","丽水","绍兴","衢州","嘉兴","台州","舟山","温州""101210101","101210201","101210901","101210401","101210801","101210501","101211001","101210301","101210601","101211101","101210701"江西"南昌","萍乡","九江","上饶","抚州","吉安","鹰潭","宜春","新余","景德镇","赣州""101240101","101240901","101240201","101240301","101240401","101240601","101241101","101240501","101241001","101240801","101240701"福建"福州","厦门","龙岩","南平","宁德","莆田","泉州","三明","漳州""101230101","101230201","101230701","101230901","101230301","101230401","101230501","101230801","101230601"贵州"贵阳","安顺","赤水","遵义","铜仁","六盘水","毕节","凯里","都匀""101260101","101260301","101260208","101260201","101260601","101260801","101260701","101260501","101260401"四川"成都","泸州","内江","凉山","阿坝","巴中","广元","乐山","绵阳","德阳","攀枝花","雅安","宜宾","自贡","甘孜州","达州","资阳","广安","遂宁","眉山","南充""101270101","101271001","101271201","101271601","101271901","101270901","101272101","101271401","101270401","101272001","101270201","101271701","101271101","101270301","101271801","101270601","101271301","101270801","101270701","101271501","101270501"广东"广州","深圳","潮州","韶关","湛江","惠州","清远","东莞","江门","茂名","肇庆","汕尾","河源","揭阳","梅州","中山","德庆","阳江","云浮","珠海","汕头","佛山""101280101","101280601","101281501","101280201","101281001","101280301","101281301","101281601","101281101","101282001","101280901","101282101","101281201","101281901","101280401","101281701","101280905","101281801","101281401","101280701","101280501","101280800"广西"南宁","桂林","阳朔","柳州","梧州","玉林","桂平","贺州","钦州","贵港","防城港","百色","北海","河池","来宾","崇左""101300101","101300501","101300510","101300301","101300601","101300901","101300802","101300701","101301101","101300801","101301401","101301001","101301301","101301201","101300401","101300201"云南"昆明","保山","楚雄","德宏","红河","临沧","怒江","曲靖","思茅","文山","玉溪","昭通","丽江","大理""101290101","101290501","101290801","101291501","101290301","101291101","101291201","101290401","101290901","101290601","101290701","101291001","101291401","101290201"海南"海口","三亚","儋州","琼山","通什","文昌""101310101","101310201","101310205","101310102","101310222","101310212"新疆"乌鲁木齐","阿勒泰","阿克苏","昌吉","哈密","和田","喀什","克拉玛依","石河子","塔城","库尔勒","吐鲁番","伊宁""101130101","101131401","101130801","101130401","101131201","101131301","101130901","101130201","101130301","101131101","101130601","101130501","101131001"西藏"拉萨","阿里","昌都","那曲","日喀则","山南","林芝""101140101","101140701","101140501","101140601","101140201","101140301","101140401"台湾"台北","高雄""101340102","101340201"

有道天气api

http://www.yodao.com/smartresult-xml/search.s?type=weather&jsFlag=0&q=%E6%B7%B1%E5%9C%B3

微信公众平台消息接口开发(4)天气预报相关推荐

  1. 微信公众平台消息接口开发(2)-封装weixin.class.php

    微信公众平台消息接口开发(2)-封装weixin.class.php 一.封装weixin.class.php 由于微信公众平台的通信使用的是特定格式的XML数据,每次接受和回复都要去做一大堆的数据处 ...

  2. 微信公众平台消息接口开发(34)微信墙之表白墙/婚礼墙/晚会墙/会议墙/晒单墙/照片墙/历史墙...

    微信公众平台开发模式 微信 公众平台 消息接口 开发模式 企业微信公众平台 微信墙 婚礼墙/晚会墙/会议墙/晒单墙/照片墙/历史墙 历史上的今天 作者:方倍工作室   原文: http://www.c ...

  3. php网站怎么对接微信群,PHP对接微信公众平台消息接口开发流程教程

    PHP(外文名:PHP: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,利于学习,使 ...

  4. php对接微信提醒,PHP对接微信公众平台消息接口开发流程教程

    PHP对接微信公众平台消息接口开发流程教程 发布于 2015-02-15 08:54:13 | 157 次阅读 | 评论: 1 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hyperte ...

  5. 微信公众平台消息接口开发(1)

    原文链接 现在微信很热,微信公众平台的应用也很热,其实微信公众平台消息接口开发并不难,只要有接口调用就OK了. 要开发微信公众平台上的应用,得准备什么呢? 至少要有一个公众账号.服务器.域名这三样东西 ...

  6. php微信公众号怎么开发_PHP对接微信公众平台消息接口开发流程详解及实例

    这篇文章主要介绍了PHP对接微信公众平台消息接口开发流程,如何使用PHP版接口操作公众平台消息,需要的朋友可以参考下 一.写好接口程序 在你的服务器上上传好一个接口程序文件内容如下: 代码如下:< ...

  7. 微信公众平台消息接口开发(34)微信墙之表白墙/婚礼墙/晚会墙/会议墙/晒单墙/照片墙/历史墙

    微信公众平台开发模式 微信 公众平台 消息接口 开发模式 企业微信公众平台 微信墙 婚礼墙/晚会墙/会议墙/晒单墙/照片墙/历史墙 历史上的今天 作者:方倍工作室   原文: http://www.c ...

  8. 微信公众平台消息接口开发(13)多语种互译

    微信公众平台消息接口 微信公众平台API 微信开发模式 多语种翻译 多语言互译 Microsoft Translator 方倍工作室 Paraphrase API 10 out of 11 rated ...

  9. 微信公众平台消息接口开发(22)图片识别之漂亮指数/帅气指数

    微信公众平台开发模式 微信 图片识别 人脸识别 漂亮指数 帅气指数 微信公众平台消息接口 微信开发模式 作者:http://www.cnblogs.com/txw1958/ 原文:http://www ...

最新文章

  1. Mysql ID重新排列
  2. flash期末作业成品_基于“新工科”的工科物理作业模式研究
  3. 我是如何在两天内做完一个网站的
  4. C#中一行代码实现18位数字时间戳转换为DateTime
  5. 10-线程,进程,协程,IO多路复用
  6. 2020 ICPC 上海 Sum of Log 数位dp + 状态剪枝
  7. linux自动读取麦克风,检测用户向麦克吹气
  8. 207. Course Schedule
  9. 【CodeForces - 260D】Black and White Tree (思维构造,猜结论,细节,构造一棵树)
  10. 前端中什么是中台开发环境_Web前端开发中需要学习什么?会使用到哪些开发工具?...
  11. CANOpen数据存档文件
  12. android 筛选菜单_使用C语言开发跨平台(win/android)应用(PainterEngine 快速入门教程)...
  13. mysql row 日志格式_mysql row日志格式下 查看binlog sql语句
  14. iso12233测试方法_ISO12233分辨率图像测试卡使用时拍摄方法
  15. 宽度学习与深度学习中的时空转化问题
  16. QIIME2进阶四_QIIME2扩增子基因序列系统发育分析
  17. 服务器四核cpu性能排行,服务器cpu性能排行
  18. javascript——构造函数和原型对象
  19. 用python写一个魂斗罗
  20. PS案例实战,从基础到精通 淘宝美工/海报制作/人物精修-姜浩-专题视频课程

热门文章

  1. 进程在操作系统内核程序临界区不能进行调度与切换,在普通临界区能够调度与切换?什么是临界资源?什么是临界区
  2. NQA-- ICMP实验
  3. 修改游戏服务器中的数据,修改游戏服务器中的数据库
  4. maxwaitmill redis_在redis使用过程遇到的一些问题的总结
  5. 2021年实验中学高考成绩查询,绵阳市实验高级中学2021年排名
  6. wordpress脚注代码_将脚注带入WordPress的5种方法
  7. javascript4 事件
  8. 微信小程序 voip-room 多人音视频对话 组件
  9. 信息课为什么不叫计算机课,第1课信息和信息技术”教学设计
  10. Spring循环依赖流程分析