微信公众平台消息接口开发(32)空气质量指数查询

原文:微信公众平台消息接口开发(32)空气质量指数查询

微信公众平台开发 微信公众平台开发者 微信公众平台开发模式 空气质量指数 PM2.5 
作者:方倍工作室 
原文:http://www.cnblogs.com/txw1958/archive/2013/05/30/weixin-if32-air-quality.html

 

一、获取原版数据

在中国环境监测总站http://www.cnemc.cn/ 可以找到全国城市空气质量实时发布平台,其地址为 http://113.108.142.147:20035/emcpublish/
该平台由中山大学智能交通研究中心承担,下附新闻:
2013年1月1日开始,由中山大学智能交通研究中心承担承担研发的全国城市空气质量实况发布平台在中国环境监测总站上线使用。该平台按照《环境空气质量标准》(GB3095-2012)(简称“空气质量新标准”)要求,实时发布京津冀、长三角、珠三角等重点区域及直辖市、省会城市等共74个城市、496个监测点位的二氧化硫(SO2)、二氧化氮(NO2)、可吸入颗粒物(PM10)、臭氧(O3)、一氧化碳(CO) 和细颗粒物(PM2.5)等6项基本项目的实时监测数据和AQI指数等信息。
新闻来源显示:http://its.sysu.edu.cn/shownews.asp?id=167

下载开始看如何抓取这个网站的数据:
直接使用wireshark抓包
过滤条件:ip.dst_host matches "113.108.142.147" || ip.src_host matches "113.108.142.147"

得到的都是TCP的包?

打开一个包的内容看一下,其实是html/xml格式的soap包,

HTTP/1.1 200 OK
Content-Length: 499
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/7.5
X-Powered-By: ASP.NET
Date: Thu, 30 May 2013 04:52:19 GMT

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><GetCityNameByPIDResponse xmlns="http://tempuri.org/"><GetCityNameByPIDResult xmlns:a="http://schemas.datacontract.org/2004/07/EnvCriteria.Model" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><a:CityInfo><a:CityCode>110100</a:CityCode><a:CityJC>BJS</a:CityJC><a:CityName></a:CityName><a:ID>1</a:ID><a:ProvinceId>1</a:ProvinceId></a:CityInfo></GetCityNameByPIDResult></GetCityNameByPIDResponse></s:Body></s:Envelope>

看来是SOAP没有被识别,在WireShark上把20035端口加进来,进入

Edit -> Preferences -> Protocols -> HTTP -> TCP Ports

将20035添加进来

 这时,可以看到识别成html/xml协议了

同时可以找到这个WebService接口

官方接口地址为:

http://113.108.142.147:20035/EnvPubServiceSSL/EnvAQIServeice.svc

一切似乎很顺利,胜利在望。

 

再来打开看一下soap包的内容

拿出来分析一下:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
    <s:Body>
        <GetAllHistoryByNameAndTime0320Response xmlns="http://tempuri.org/">
            <GetAllHistoryByNameAndTime0320Result>T/eoSkC02T908BICNUxbXN6bZIWdBhoF45S5uNRQBDFc1RdekG4UNYP9Y1HAr9ZvbVYf0YYIp6Cmr6aHQmgpELOnK7hWUe0K5vDoKEb/BRPSrKEcM7zC7qc6lD5qiPrlIBeH4Dw20pt1aBj9c0t7CYRwforg3E4882URyEOS+zMo0oEewUB7Vza/zT3iWRJ9TsU3CSBCCW0wur6AySyw4O2TgoSb+0CMbtRaC+MPeKBFUtSeGY6JRKljcT+LkSmZqT2XEsJhLfbM1Pidxbh7416VgAI/6n/HwLxjaMBc2k+Sy3IljoVoZfJP9prSbtUqkWJ1eRRqSlIjCgvuonx0hcqDHkQvBIcB/3ifTwI7YB2xs26IDLEjkXvSuMBB3PZnjLMQDMn4Gp1TAcUZLImCv8huYdnqfGzmHf8Khm3MCXnrhCZUoX8tO9H+KEg/8bHOO7gMGXGV+yP8WMHvazZVLRO+OXK0rG4jlYnC0RluUNpC/mOketcu3jPlFS4dQ7qPnn8iN03pF+aeVLVrvmyU5m0IbuTf23VaxEy4/wCtW4WW5Im8kiojWs9Ocm+eYg7WQAn0PjHGMF8tPUBNYHSW/m7tm3H7jXqFXGDTdYHEvW0u1XjGSyHMXaLyrqqEI9v+sBoQ89Vzl+M1d/VnhaxFyPiGzW22Jddqg9EQ5YD+pFI=
            </GetAllHistoryByNameAndTime0320Result>
        </GetAllHistoryByNameAndTime0320Response>
    </s:Body>
</s:Envelope>

这个GetAllHistoryByNameAndTime0320Result 这个值如何解密?? 

数据无法解密,不再研究下去了,有兴趣研究的可以看 http://www.newsmth.net/nForum/#!article/WebDev/24420 

 

二、使用第三方接口

PM25.in是广州BestApp工作室开发的一个空气质量数据监测产品。收录了全国74个城市,近500个监测点的实时数据(毎小时更新)。数据源于国家环保局和各地环保机构的公开数据。开发团队将所有采集的数据进行统一处理,然后再通过API的方式提供出去。接口地址:http://pm25.in/api_doc

数据格式说明:
PM25.in网站提供的空气质量指数实时数据来源于国家环境保护部,API返回的数据包括了以下内容:
字段 字段说明
aqi 空气质量指数(AQI),即air quality index,是定量描述空气质量状况的无纲量指数
area 城市名称
position_name 监测点名称
station_code 监测点编码
so2 二氧化硫1小时平均
so2_24h 二氧化硫24小时滑动平均
no2 二氧化氮1小时平均
no2_24h 二氧化氮24小时滑动平均
pm10 颗粒物(粒径小于等于10μm)1小时平均
pm10_24h 颗粒物(粒径小于等于10μm)24小时滑动平均
co 一氧化碳1小时平均
co_24h 一氧化碳24小时滑动平均
o3 臭氧1小时平均
o3_24h 臭氧24小时滑动平均
o3_8h 臭氧8小时滑动平均
o3_8h_24h 臭氧8小时滑动平均的24小时均值
pm2_5 颗粒物(粒径小于等于2.5μm)1小时平均
pm2_5_24h 颗粒物(粒径小于等于2.5μm)24小时滑动平均
primary_pollutant 首要污染物
quality 空气质量指数类别,有“优、良、轻度污染、中度污染、重度污染、严重污染”6类
time_point 数据发布的时间

使用接口

1.12、获取所有城市的空气质量详细数据
地址 http://www.pm25.in/api/querys/all_cities.json
方法 GET
参数 * 无
返回
一个数组,里面包含目前支持的77个城市所有监测点的详细信息,一共507项,其中每项的信息有
* aqi
* area
* co
* co_24h
* no2
* no2_24h
* o3
* o3_24h
* o3_8h
* o3_8h_24h
* pm10
* pm10_24h
* pm2_5
* pm2_5_24h
* position_name
* primary_pollutant
* quality
* so2
* so2_24h
* station_code
* time_point

最好的方法是每小时同步这个接口一次,把数据存入本地数据库,再进行分析。

 

三、效果演示

香港空气污染指数 HongKong Air Pollution Index  

 

 

 ============================================

方倍工作室微信公众平台账号关注方法:
1. 微信通讯录-添加朋友-查找公众号-搜索“方倍工作室”
2. 微信通讯录-添加朋友-搜号码-输入“pondbaystudio”
3. 使用微信扫描下面的二维码

 

 

时间: 2024-10-02 18:37:26

微信公众平台消息接口开发(32)空气质量指数查询的相关文章

微信公众平台消息接口开发(7)快递查询

微信公众平台消息接口 微信公众平台开发 微信公众平台开发模式  快递查询 作者:方倍工作室原文:http://www.cnblogs.com/txw1958/archive/2013/03/12/weixin-if7-express.html   一.请求数据 快递100提供快递查询接口.  通过向指定的地址发送请求,即可返回如JSON.XML等格式的跟综结果 3.请求地址 http://api.kuaidi100.com/api?id=[]&com=[]&nu=[]&valico

微信公众平台消息接口开发(10)语音触发(非识别)

微信公众平台消息接口开发 微信公众平台开发模式 语音识别 天气预报 天气神 方倍工作室 作者:http://www.cnblogs.com/txw1958/  本系统教程以微信公众平台应用天气神(账号WeatherGod,支持国内近400个城市天气的名称.拼音.区号.邮编以及语音触发模式查询)为例,讲解微信接口开发过程.欢迎大家关注该账号并使用语音方式查询当地天气,二维码见底部.   一.通过输入文字的方式查询天气一般都是通过城市名称.拼音.区号等方式实现的查询,基本上都是搜索数据库,获得对应的

微信公众平台消息接口开发(24)图片识别之人脸识别API

微信公众平台开发模式 微信 公众平台 消息接口 开发模式 企业微信公众平台 图片识别 人脸识别 API 作者:方倍工作室  原文:http://www.cnblogs.com/txw1958/archive/2013/03/13/weixin-if24-face-recognize-api.html   一.微信图片获取 首先要获得用户发过来的图片,微信公众平台支持接收图片,一条图片消息的格式如下: <xml> <ToUserName><![CDATA[gh_13d1a3a7

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

微信公众平台开发模式 微信 公众平台 消息接口 开发模式 企业微信公众平台 微信墙 婚礼墙/晚会墙/会议墙/晒单墙/照片墙/历史墙 历史上的今天作者:方倍工作室  原文: http://www.cnblogs.com/txw1958/archive/2013/06/08/weixin-if34-wall.html    微信上墙是利用微信公众平台,让观众将希望互动的内容通过手机发送给相关平台账号,进而由工作人员从后台筛选/或不筛选上墙的一种方式.只要像和朋友聊天一样,将你想要表达的内容发给对方,

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

原文:微信公众平台消息接口开发-封装weixin.class.php 一.封装weixin.class.php 由于微信公众平台的通信使用的是特定格式的XML数据,每次接受和回复都要去做一大堆的数据处理. 我们就考虑在这个基础上做一次封装,weixin.class.php,代码如下: <?php class Weixin {     public $token = '';//token     public $debug =  false;//是否debug的状态标示,方便我们在调试的时候记录一

微信公众平台消息接口开发教程 附封装工具实例(1/3)

微信公众平台消息接口 要接收微信平台发送的消息,我们需要先熟悉微信公众平台API中消息接口部分,点此进入,点击后将进入到消息接口指南部分,如下图所示: 开发教程 附封装工具实例(1/3)-js封装组件实例"> 在上图左侧可以看到微信公众平台目前开放的接口有三种:消息接口.通用接口和自定义菜单接口.通用接口和自定义菜单接口只有拿到内测资格才能调用,而内测资格的申请也已经关闭了,我们只有期待将来某一天微信会对大众用户开放吧,所以没有内测资格的用户就不要再浪费时间在这两个接口上,只需要用好消息接

微信公众平台消息接口开发(50)在线点歌/在线音乐

微信 在线听歌 在线点歌 在线点播 音乐API 公众平台 微信公众平台消息接口 微信开发模式  作者:http://www.cnblogs.com/txw1958/ 原文:http://www.cnblogs.com/txw1958/archive/2013/02/25/weixin-if50-music.html 微信公众平台在年前开放了新的消息接口-音乐消息,这是广大微信公众平台开发者的福音.根据这一功能,如果能做出在微信中点歌功能,那么我们以后就可以不用安装其他APP,直接在微信里面关注一

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

微信公众平台消息接口 微信公众平台API 微信开发模式 多语种翻译 多语言互译 Microsoft Translator 方倍工作室     Paraphrase API   10 out of 11 rated this helpful - Rate this topic   The Paraphrase API is an English-to-English machine translation system that rephrases English sentences in Eng

微信公众平台消息接口开发(12)消息接口Bug

微信公众平台开发模式 微信公众平台消息接口 微信公众平台API 微信开发模式 Bug 方倍工作室 原文:http://www.cnblogs.com/txw1958/archive/2013/03/16/weixin-if12-bug.html     自己看吧,不做说明了.