weather.com.cn 天气接口为何返回的是过去 7 天的数据?不应该是未来 7 天吗?这样有什么意义?

2014-02-25 11:45:27 +08:00
 michaelye1988
http://m.weather.com.cn/data/101230101.html
5458 次点击
所在节点    问与答
23 条回复
wzxjohn
2014-02-25 13:21:44 +08:00
目测接口出问题了。之前我用的也是这个接口,现在好像问题很大。。。悲催。。。
michaelye1988
2014-02-25 13:27:37 +08:00
@wzxjohn 还有这种事?如果真是这样,weather.com的开发人员也是搞笑了。你现在用的什么接口啊?有没有更好,更方便点的?
qiuai
2014-02-25 13:36:12 +08:00
奇怪了,之前用正常啊?
michaelye1988
2014-02-25 13:50:28 +08:00
我准备自己写一个天气软件,界面做差不多了,今天看到接口返回的数据,傻眼了。
wzxjohn
2014-02-25 16:07:53 +08:00
@michaelye1988 我还没换接口呢。。。正在看有没有更好的。。。我的一个应用是以这个接口返回的数据为模板的。。。现在直接悲剧了。。。
wzxjohn
2014-02-25 16:09:19 +08:00
@michaelye1988 也有可能是故意在免费接口上这么做的。。。
michaelye1988
2014-02-25 16:32:07 +08:00
@wzxjohn 我想过去也是这样的,他们网站下方有:
郑重声明:使用本站天气信息,请与本站联系获取天气信息使用授权 授权邮箱 :service@weather.com.cn

雅虎天气返回的是英文的,Google的Api关闭了,哎,不知道怎么搞。
wzxjohn
2014-02-25 17:48:15 +08:00
@michaelye1988 唉。。。关键是也不给个通知。付钱都是可以接受的。别直接这么干啊。。。
michaelye1988
2014-02-25 17:58:55 +08:00
@wzxjohn 是啊,好坑爹的感觉。
yfdyh000
2014-02-25 18:10:39 +08:00
akaayy
2014-02-25 18:21:58 +08:00
这是对的,这样可以保证预报的准确度,绝对是100%
sun019
2014-02-25 18:24:58 +08:00
好吧 我又得改接口了 从weather的挂了改到腾讯的 腾讯的挂了 又改到weather
现在weather 又挂了 哎
oott123
2014-02-25 18:26:05 +08:00
让你自己根据过去的天气预测未来的天气…
faceair
2014-02-25 18:44:28 +08:00
应该是旧网站关闭了,换了新的网站 http://mobile.weather.com.cn/

这个网站的接口是这个http://mobile.weather.com.cn/data/forecast/101010100.html
我根据 http://mobile.weather.com.cn/js/weather.js 只能解析里面的几个参数。

日期和星期是根据 f0 自己算的。
再后面的f1是天气数组

天气对照表:
{"00":"晴","01":"多云","02":"阴","03":"阵雨","04":"雷阵雨","05":"雷阵雨伴有冰雹","06":"雨夹雪","07":"小雨","08":"中雨","09":"大雨","10":"暴雨","11":"大暴雨","12":"特大暴雨","13":"阵雪","14":"小雪","15":"中雪","16":"大雪","17":"暴雪","18":"雾","19":"冻雨","20":"沙尘暴","21":"小到中雨","22":"中到大雨","23":"大到暴雨","24":"暴雨到大暴雨","25":"大暴雨到特大暴雨","26":"小到中雪","27":"中到大雪","28":"大到暴雪","29":"浮尘","30":"扬沙","31":"强沙尘暴","53":"霾","99":""}

fa是上午的天气
fb是下午的天气
fc是上午的温度
fd是下午的温度
fi是日出日落时间

风向对照表:
{"1":"东北风","2":"东风","3":"东南风","4":"南风","5":"西南风","6":"西风","7":"西北风","8":"北风"}
(我也不知道风向对应哪个参数

只能帮你到这了。。
sarices
2014-02-26 09:08:11 +08:00
我还以为没有更新呢,还是采集网站算了
michaelye1988
2014-02-26 09:55:26 +08:00
@oott123 好机智!
michaelye1988
2014-02-26 09:55:56 +08:00
@faceair 非常感谢~
wzxjohn
2014-03-03 11:04:14 +08:00
wzxjohn
2014-03-03 11:56:44 +08:00
@faceair
@michaelye1988 我错了,这个接口更坑。请注意f0
"f0":"201310121100"
这个接口提供的是半年前的数据。。。
经过测试,这个接口必须附带非常精确的Javascript时间戳(13位)才能得到正确的响应数据。求使用php获取到13位js时间戳的方法。。。我实验了time()*1000直接被打回原型。
wzxjohn
2014-03-03 14:00:54 +08:00
@faceair
@michaelye1988 好吧,调试完成这个接口了,不是时间戳的问题,是ref的问题。如果检测到ref不是mobile.weather.com.cn的话就会返回201310121100的数据。坑爹呢这是!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/101738

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX