天气API-----开源免费天气预报接口API以及全国所有地区代码!!(国家气象局提供)

国家气象局提供的天气预报接口

接口地址:

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

 

对于第三个接口,返回信息比较全面,也是以json格式提供,格式如下

{"weatherinfo": {
//基本信息;
"city":"北京","city_en":"beijing",
"date_y":"2012年2月16日", "date":"", "week":"星期四", "fchh":"11", "cityid":"101010100",
//摄氏温度
"temp1":"2℃~-7℃",
"temp2":"1℃~-7℃",
"temp3":"4℃~-7℃",
"temp4":"7℃~-5℃",
"temp5":"5℃~-3℃",
"temp6":"5℃~-2℃",
//华氏温度;
"tempF1":"35.6℉~19.4℉",
"tempF2":"33.8℉~19.4℉",
"tempF3":"39.2℉~19.4℉",
"tempF4":"44.6℉~23℉",
"tempF5":"41℉~26.6℉",
"tempF6":"41℉~28.4℉",
//天气描述;
"weather1":"晴",
"weather2":"晴",
"weather3":"晴",
"weather4":"晴转多云",
"weather5":"多云",
"weather6":"多云转阴",
//天气描述图片序号
"img1":"0",
"img2":"99",
"img3":"0",
"img4":"99",
"img5":"0",
"img6":"99",
"img7":"0",
"img8":"1",
"img9":"1",
"img10":"99",
"img11":"1",
"img12":"2",
"img_single":"0",
//图片名称;
"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":"北风3-4级转微风",
"wind2":"微风",
"wind3":"微风",
"wind4":"微风",
"wind5":"微风",
"wind6":"微风",
//风速级别描述
"fx1":"北风",
"fx2":"微风",
"fl1":"3-4级转小于3级",
"fl2":"小于3级",
"fl3":"小于3级",
"fl4":"小于3级",
"fl5":"小于3级",
"fl6":"小于3级",
//今天穿衣指数;
"index":"冷",
"index_d":"天气冷,建议着棉衣、皮夹克加羊毛衫等冬季服装。年老体弱者宜着厚棉衣或冬大衣。",
//48小时穿衣指数
"index48":"冷",
"index48_d":"天气冷,建议着棉衣、皮夹克加羊毛衫等冬季服装。年老体弱者宜着厚棉衣或冬大衣。",
//紫外线及48小时紫外线
"index_uv":"弱",
"index48_uv":"弱",
//洗车
"index_xc":"适宜",
//旅游
"index_tr":"一般",
//舒适指数
"index_co":"较不舒适",


"st1":"1",
"st2":"-8",
"st3":"2",
"st4":"-4",
"st5":"5",
"st6":"-5",
//晨练
"index_cl":"较不宜",
//晾晒
"index_ls":"基本适宜",
//过敏
"index_ag":"极不易发"}}

 

 


全国各城市代码如下:

北京:101010100朝阳:101010300顺义:101010400怀柔:101010500通州:101010600昌平:101010700延庆:101010800丰台:101010900石景山:101011000大兴:101011100房山:101011200密云:101011300门头沟:101011400平谷:101011500八达岭:101011600佛爷顶:101011700汤河口:101011800密云上甸子:101011900斋堂:101012000霞云岭:101012100北京城区:101012200海淀:101010200天津:101030100宝坻:101030300东丽:101030400西青:101030500北辰:101030600蓟县:101031400汉沽:101030800静海:101030900津南:101031000塘沽:101031100大港:101031200武清:101030200宁河:101030700上海:101020100宝山:101020300嘉定:101020500南汇:101020600浦东:101021300青浦:101020800松江:101020900奉贤:101021000崇明:101021100徐家汇:101021200闵行:101020200金山:101020700石家庄:101090101张家口:101090301承德:101090402唐山:101090501秦皇岛:101091101沧州:101090701衡水:101090801邢台:101090901邯郸:101091001保定:101090201廊坊:101090601郑州:101180101新乡:101180301许昌:101180401平顶山:101180501信阳:101180601南阳:101180701开封:101180801洛阳:101180901商丘:101181001焦作:101181101鹤壁:101181201濮阳:101181301周口:101181401漯河:101181501驻马店:101181601三门峡:101181701济源:101181801安阳:101180201合肥:101220101芜湖:101220301淮南:101220401马鞍山:101220501安庆:101220601宿州:101220701阜阳:101220801亳州:101220901黄山:101221001滁州:101221101淮北:101221201铜陵:101221301宣城:101221401六安:101221501巢湖:101221601池州:101221701蚌埠:101220201杭州:101210101舟山:101211101湖州:101210201嘉兴:101210301金华:101210901绍兴:101210501台州:101210601温州:101210701丽水:101210801衢州:101211001宁波:101210401重庆:101040100合川:101040300南川:101040400江津:101040500万盛:101040600渝北:101040700北碚:101040800巴南:101040900长寿:101041000黔江:101041100万州天城:101041200万州龙宝:101041300涪陵:101041400开县:101041500城口:101041600云阳:101041700巫溪:101041800奉节:101041900巫山:101042000潼南:101042100垫江:101042200梁平:101042300忠县:101042400石柱:101042500大足:101042600荣昌:101042700铜梁:101042800璧山:101042900丰都:101043000武隆:101043100彭水:101043200綦江:101043300酉阳:101043400秀山:101043600沙坪坝:101043700永川:101040200福州:101230101泉州:101230501漳州:101230601龙岩:101230701晋江:101230509南平:101230901厦门:101230201宁德:101230301莆田:101230401三明:101230801兰州:101160101平凉:101160301庆阳:101160401武威:101160501金昌:101160601嘉峪关:101161401酒泉:101160801天水:101160901武都:101161001临夏:101161101合作:101161201白银:101161301定西:101160201张掖:101160701广州:101280101惠州:101280301梅州:101280401汕头:101280501深圳:101280601珠海:101280701佛山:101280800肇庆:101280901湛江:101281001江门:101281101河源:101281201清远:101281301云浮:101281401潮州:101281501东莞:101281601中山:101281701阳江:101281801揭阳:101281901茂名:101282001汕尾:101282101韶关:101280201南宁:101300101柳州:101300301来宾:101300401桂林:101300501梧州:101300601防城港:101301401贵港:101300801玉林:101300901百色:101301001钦州:101301101河池:101301201北海:101301301崇左:101300201贺州:101300701贵阳:101260101安顺:101260301都匀:101260401兴义:101260906铜仁:101260601毕节:101260701六盘水:101260801遵义:101260201凯里:101260501昆明:101290101红河:101290301文山:101290601玉溪:101290701楚雄:101290801普洱:101290901昭通:101291001临沧:101291101怒江:101291201香格里拉:101291301丽江:101291401德宏:101291501景洪:101291601大理:101290201曲靖:101290401保山:101290501呼和浩特:101080101乌海:101080301集宁:101080401通辽:101080501阿拉善左旗:101081201鄂尔多斯:101080701临河:101080801锡林浩特:101080901呼伦贝尔:101081000乌兰浩特:101081101包头:101080201赤峰:101080601南昌:101240101上饶:101240301抚州:101240401宜春:101240501鹰潭:101241101赣州:101240701景德镇:101240801萍乡:101240901新余:101241001九江:101240201吉安:101240601武汉:101200101黄冈:101200501荆州:101200801宜昌:101200901恩施:101201001十堰:101201101神农架:101201201随州:101201301荆门:101201401天门:101201501仙桃:101201601潜江:101201701襄樊:101200201鄂州:101200301孝感:101200401黄石:101200601咸宁:101200701成都:101270101自贡:101270301绵阳:101270401南充:101270501达州:101270601遂宁:101270701广安:101270801巴中:101270901泸州:101271001宜宾:101271101内江:101271201资阳:101271301乐山:101271401眉山:101271501凉山:101271601雅安:101271701甘孜:101271801阿坝:101271901德阳:101272001广元:101272101攀枝花:101270201银川:101170101中卫:101170501固原:101170401石嘴山:101170201吴忠:101170301西宁:101150101黄南:101150301海北:101150801果洛:101150501玉树:101150601海西:101150701海东:101150201海南:101150401济南:101120101潍坊:101120601临沂:101120901菏泽:101121001滨州:101121101东营:101121201威海:101121301枣庄:101121401日照:101121501莱芜:101121601聊城:101121701青岛:101120201淄博:101120301德州:101120401烟台:101120501济宁:101120701泰安:101120801西安:101110101延安:101110300榆林:101110401铜川:101111001商洛:101110601安康:101110701汉中:101110801宝鸡:101110901咸阳:101110200渭南:101110501太原:101100101临汾:101100701运城:101100801朔州:101100901忻州:101101001长治:101100501大同:101100201阳泉:101100301晋中:101100401晋城:101100601吕梁:101101100乌鲁木齐:101130101石河子:101130301昌吉:101130401吐鲁番:101130501库尔勒:101130601阿拉尔:101130701阿克苏:101130801喀什:101130901伊宁:101131001塔城:101131101哈密:101131201和田:101131301阿勒泰:101131401阿图什:101131501博乐:101131601克拉玛依:101130201拉萨:101140101山南:101140301阿里:101140701昌都:101140501那曲:101140601日喀则:101140201林芝:101140401台北县:101340101高雄:101340201台中:101340401海口:101310101三亚:101310201东方:101310202临高:101310203澄迈:101310204儋州:101310205昌江:101310206白沙:101310207琼中:101310208定安:101310209屯昌:101310210琼海:101310211文昌:101310212保亭:101310214万宁:101310215陵水:101310216西沙:101310217南沙岛:101310220乐东:101310221五指山:101310222琼山:101310102长沙:101250101株洲:101250301衡阳:101250401郴州:101250501常德:101250601益阳:101250700娄底:101250801邵阳:101250901岳阳:101251001张家界:101251101怀化:101251201黔阳:101251301永州:101251401吉首:101251501湘潭:101250201南京:101190101镇江:101190301苏州:101190401南通:101190501扬州:101190601宿迁:101191301徐州:101190801淮安:101190901连云港:101191001常州:101191101泰州:101191201无锡:101190201盐城:101190701哈尔滨:101050101牡丹江:101050301佳木斯:101050401绥化:101050501黑河:101050601双鸭山:101051301伊春:101050801大庆:101050901七台河:101051002鸡西:101051101鹤岗:101051201齐齐哈尔:101050201大兴安岭:101050701长春:101060101延吉:101060301四平:101060401白山:101060901白城:101060601辽源:101060701松原:101060801吉林:101060201通化:101060501沈阳:101070101鞍山:101070301抚顺:101070401本溪:101070501丹东:101070601葫芦岛:101071401营口:101070801阜新:101070901辽阳:101071001铁岭:101071101朝阳:101071201盘锦:101071301大连:101070201锦州:101070701 

 

 

 

1. XML接口 http://flash.weather.com.cn/wmaps/xml/china.xml 这个是全国天气的根节点,列出所有的省,其中的pyName字段是各个省XML的文件名,比如北京的是beijing,那就意味着北京的XML地址为 http://flash.weather.com.cn/wmaps/xml/beijing.xml 一个省的天气,其中列出该省各个市的数据,北京就列出各个区。 tmp1是最低温低,tmp2是最高温度,url非常重要,我们一会儿再说。state1和state2是神马转神马,每个数代表一个天气现象。天气现象非常多,我本想全部分析出来,后来直接放弃了这个想法。因为我看到了一个城市的天气现象的编码是26...我现在知道的有0.晴 1.多云 2.阴 6.雨夹雪 7.小雨 8.中雨 13.阵雪 14.小雪 其中后来发现知道这个没用,这个数字的主要作用是检索图片的!!!

2. 图片接口 http://m.weather.com.cn/img/c0.gif http://m.weather.com.cn/img/b0.gif http://www.weather.com.cn/m/i/weatherpic/29x20/d0.gif http://www.weather.com.cn/m2/i/icon_weather/29x20/n00.gif 这个图就是天气现象0(晴)的图片,其他天气现象的图片依此类推。c打头的图片是20*20像素的,b打头的是50*46像素的,d打头的是反白的图标,29*20像素,n打头的是夜间反白图标,29*20像素,注意这里的文件名是两位数字! 也许还有更多的图标,等待大家发掘啦~

3. JSON接口 真没想到~居然有JSON接口~JSON在iPhone上分析起来要比XML简单很多 http://m.weather.com.cn/data/101010200.html 这个是北京的JSON数据,那个HTML的名字是根据上文XML中的url得到的。这个JSON中包含了实时数据、7天天气预报、气象指数等丰富的数据

 

 

获取省级代码:http://www.weather.com.cn/data/list3/city.xml?level=1
获取城市代码(比如安徽是22):http://www.weather.com.cn/data/list3/city22.xml?level=2
获取区域代码(比如安庆是2206):http://www.weather.com.cn/data/list3/city2206.xml?level=3
获取到安徽省安庆市望江县的代码是220607
然后去加上中国代码请求URL:http://m.weather.com.cn/data/101220607.html
就可以获取当地天气。

另外再给几个有用的探索得到的URL:
天气 FLASH实况:http://flash.weather.com.cn/sk2/101220607.xml
实况FLASH:http://flash.weather.com.cn/sk2/shikuang.swf?id=101220607

三级选择菜单(注明,这里有四个INPUT,其中有一个被隐藏了,可用FIREFOX改下源代码查看):http://www.weather.com.cn/static/custom/search3.htm
实时天气(很有用哦):http://www.weather.com.cn/data/sk/101220607.html





通过城市名称去的cityid是可以的,api如下:
“http://toy.weather.com.cn/SearchBox/searchBox?callback=jsonp1342857491709&_=1342857620727&language=zh&keyword=”+城市名称

北京应该GET以下网址:http://toy.weather.com.cn/SearchBox/searchBox?callback=jsonp1343396048201&_=1343396067262&language=zh&keyword=%E5%8C%97%E4%BA%AC

这里城市名称可以使中文也可以是拼音,不过只支持中国范围内的城市;如果中文城市名的话需要进行URLEncoder进行编码。
以上海示例,得到jsonp数据如下:
jsonp1342857491709({"p":[{"n":"上海","i":"shanghai","t":"p"}],"i":[{"n":"上海","d":"上海","i":"101020100","t":"i"}]});
其中“i”:"101020100"就是cityid了,然后使用LZ听过的API进行天气查询。




 图片接口 http://m.weather.com.cn/img/c0.gifhttp://m.weather.com.cn/img/b0.gif http://www.weather.com.cn/m/i/weatherpic/29x20/d0.gifhttp://www.weather.com.cn/m2/i/icon_weather/29x20/n00.gif 这个图就是天气现象0(晴)的图片,其他天气现象的图片依此类推。c打头的图片是20*20像素的,b打头的是50*46像素的,d打头的是反白的图标,29*20像素,n打头的是夜间反白图标,29*20像素,注意这里的文件名是两位数字!


地理反编译,用的是谷歌的接口,可以根据经纬度得到城市

    ASIHTTPRequest *request=[ASIHTTPRequestrequestWithURL:[NSURLURLWithString:@"http://maps.google.com/maps/api/geocode/json?latlng=39.993956,116.362278&language=zh-CN&sensor=true"]];

用JSON解析

        NSString *str=[[[[[[request.responseStringobjectFromJSONString]objectForKey:@"results"]objectAtIndex:0]objectForKey:@"address_components"]objectAtIndex:3]objectForKey:@"short_name"];


最后得到北京





webservice工厂接口 http://www.36wu.com

快递查询接口http://webservice.36wu.com/ExpressService.asmx

ip查询接口http://webservice.36wu.com/ipService.asmx

天气预报接口http://webservice.36wu.com/weatherService.asmx

身份证查询接口http://webservice.36wu.com/IdCardService.asmx

手机归属地接口http://webservice.36wu.com/MobilePhoneService.asmx

翻译接口http://webservice.36wu.com/TranslationService.asmx

火车时刻接口http://webservice.36wu.com/TrainService.asmx

股票查询接口http://webservice.36wu.com/StockService.asmx

邮编接口http://webservice.36wu.com/ZipcodeService.asmx

二维码Web服务http://webservice.36wu.com/DimensionalCodeService.asmx

公交查询Web服务http://webservice.36wu.com/mapService.asmx 

ISBN查询Web服务http://webservice.36wu.com/ISBNService.asmx

ICP备案查询Web服务http://webservice.36wu.com/ICPServic.asmx



参考网址        http://g.kehou.com/t1033317914.html

  • 5
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 11
    评论
### 回答1: Spark是一个开源的分布式计算框架,它可以在大规模数据集上进行高效的数据处理和分析。下面是Spark的详细安装和介绍: 1. 安装Java Spark是基于Java开发的,因此需要先安装Java。可以从Oracle官网下载Java SE Development Kit(JDK)。 2. 下载Spark 可以从Spark官网下载最新版本的Spark。下载后解压缩到本地目录。 3. 配置环境变量 将Spark的bin目录添加到系统的PATH环境变量中,以便在任何地方都可以使用Spark命令。 4. 启动Spark 可以通过命令行启动Spark,也可以使用Spark的Web UI进行操作。启动Spark后,可以使用Spark Shell进行交互式数据分析。 5. 使用Java API Spark提供了Java API,可以使用Java编写Spark应用程序。Java API提供了丰富的功能,包括RDD操作、Spark SQL、Spark Streaming等。 6. 示例代码 以下是一个简单的Spark Java应用程序示例代码: ``` import org.apache.spark.SparkConf; import org.apache.spark.api.java.JavaRDD; import org.apache.spark.api.java.JavaSparkContext; public class SparkApp { public static void main(String[] args) { SparkConf conf = new SparkConf().setAppName("SparkApp").setMaster("local"); JavaSparkContext sc = new JavaSparkContext(conf); JavaRDD<String> lines = sc.textFile("input.txt"); JavaRDD<String> words = lines.flatMap(line -> Arrays.asList(line.split(" ")).iterator()); JavaRDD<String> filteredWords = words.filter(word -> word.contains("Spark")); filteredWords.saveAsTextFile("output.txt"); sc.stop(); } } ``` 以上就是Spark的详细安装和介绍,希望对你有所帮助。 ### 回答2: Apache Spark是一个快速通用的集群计算系统,它提供了高级的数据处理能力,包括批处理、交互式查询、实时流处理和机器学习。下面是Spark的详细安装和介绍,以使用Java API为例: 1. 安装Java:确保已安装Java Development Kit(JDK),Spark要求Java 8或更高版本。 2. 下载Spark:从官方网站(http://spark.apache.org/downloads.html)下载最新的Spark版本。选择预编译的包,下载后解压缩到一个目录。 3. 配置环境变量:将Spark的安装目录添加到系统的PATH环境变量中,以便可以通过命令行访问Spark。 4. 创建Spark应用程序:在Java编程环境中创建一个新的Java项目,并添加Spark的依赖。可以通过Maven或Gradle引入Spark依赖,例如: ```xml <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.12</artifactId> <version>3.0.0</version> </dependency> ``` 5. 编写Spark应用程序:使用Java API编写Spark应用程序。首先创建一个SparkConf对象,设置应用程序的配置,如Spark主机和应用程序名称。然后创建一个JavaSparkContext对象,它是使用Spark的入口点。 ```java import org.apache.spark.SparkConf; import org.apache.spark.api.java.JavaSparkContext; public class SparkApp { public static void main(String[] args) { SparkConf conf = new SparkConf().setMaster("local").setAppName("My Spark App"); JavaSparkContext sparkContext = new JavaSparkContext(conf); // 在这里编写Spark应用程序的代码 sparkContext.stop(); // 关闭SparkContext } } ``` 6. 运行Spark应用程序:使用Java的命令行工具编译和运行Spark应用程序。 ```shell javac -classpath spark-core_2.12-3.0.0.jar SparkApp.java java -classpath spark-core_2.12-3.0.0.jar:. SparkApp ``` 以上是使用Java API安装和介绍Spark的基本步骤。Spark还提供了更丰富的API和功能,可以用于数据处理、SQL查询、流处理、机器学习、图处理等各种应用场景。可以进一步学习和探索Spark的文档和示例代码,以充分利用其强大的计算能力。 ### 回答3: Spark是一个开源的分布式计算框架,可以方便地进行大数据处理和分析。下面是Spark的最详细安装和介绍以及Java API的说明。 安装Spark: 1. 首先,确保你的机器上已安装Java环境,版本要求是1.8或以上。 2. 从官方网站(https://spark.apache.org/)下载Spark的压缩包,并解压到你想要安装的目录。 3. 在Spark安装目录中,进入`sbin`目录,运行`./start-master.sh`启动Spark的Master节点。然后运行`./start-worker.sh <master-url>`启动Spark的Worker节点。 4. 打开浏览器,访问Master节点的Web界面`http://localhost:8080`,确认Spark的运行状态。 介绍Spark: 1. Spark是基于内存计算的分布式计算框架,提供了高速的数据处理能力和良好的可扩展性。它支持多种编程语言,包括Java、Scala、Python和R。 2. Spark的核心概念是弹性分布式数据集(RDD),它是一种不可变、可分区、可并行计算的数据集合。RDD可以将数据加载到内存中,并在分布式环境中进行高效的转换和操作。 3. 通过Spark的Java API,你可以使用丰富的函数和操作符来对RDD进行处理。你可以进行数据的转换、过滤、聚合等操作,还可以使用Spark提供的机器学习和图计算库进行更复杂的分析。 4. 使用Spark的Java API,你可以轻松地编写分布式计算程序,利用集群中的多台机器来并行处理大规模数据。Spark会自动管理资源分配和任务调度,使得你可以专注于业务逻辑的实现。 5. Spark还提供了一个交互式的Shell环境,可以方便地进行开发和调试。你可以实时执行代码片段,观察结果,并进行迭代和优化。 希望以上内容能帮助你了解并安装Spark,并了解如何使用Spark的Java API进行大数据处理和分析。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值