在天气文本框输入城市名时,检查发现js中出现http://toy1.weather.com.cn/search?cityname=beiji等字段,打开该链接后返回
success_jsonpCallback([{"ref":"101010100~beijing ,而其中的”101010100”正是各个城市所对应的代码,如直接访问http://www.weather.com.cn/weather/101010100.shtml即访问北京天气。
进一步观察js,发现其中http://d1.weather.com.cn/dingzhi/101010100.html所返回的数据正是我所需要的!!!
然而!403拒绝访问!!!!!!
但是既然之前可以在谷歌控制栏里面看到返回的数据,直接打开却出现问题,说明两者所发送的数据有所差异。
对比两者的headers,发现了问题所在:成功返回数据的referer数据如下
Referer:
http://www.weather.com.cn/weather/101010100.shtml 而新开的窗口却没有referer。于是尝试伪造referer,最终的结果却是失败。
不得已只得重新再来。