【04】天气查询应用(第四课)
2014-04-09 20:32
363 查看
在第三课我们抓取了city的代码放在了city.py中;
其实第三课的代码运行你会发现一个问题,抓取一段时间后发现程序就会出现异常。根本抓不下来城市的代码。这是因为脚本在短时间内频繁的抓取服务器上的信息会被误认为是攻击,导致服务器禁止了脚本的抓取。如果大家有解决办法,也告诉我一下,一起学习吗。等找到解决方案,我会写下来。
下面我们进行第四步吧。
在编写一个天气查询脚本我们的任务就完成了:
其实第三课的代码运行你会发现一个问题,抓取一段时间后发现程序就会出现异常。根本抓不下来城市的代码。这是因为脚本在短时间内频繁的抓取服务器上的信息会被误认为是攻击,导致服务器禁止了脚本的抓取。如果大家有解决办法,也告诉我一下,一起学习吗。等找到解决方案,我会写下来。
下面我们进行第四步吧。
在编写一个天气查询脚本我们的任务就完成了:
#!/usr/bin/python # -*- coding: gb2312 -*- import urllib2 import json from city import city while True: cityname = raw_input('你想查那个城市的天气?\n') citycode = city[cityname] if citycode: url = ('http://www.weather.com.cn/data/cityinfo/%s.html' % citycode) content = urllib2.urlopen(url).read() data = json.loads(content) result = data['weatherinfo'] str_temp = ('%s\n%s~%s') % (result['weather'],result['temp1'],result['temp2']) print str_temp else: print '没有找到城市' break
相关文章推荐
- OC各种数据类型之间的转换方法
- Linux命令集
- 【编码】模拟编码
- 云计算
- 社会工程学之信息刺探
- 计算最大公约数和不定方程
- kali live 安装到U盘
- java中对象的比较---==与equals的使用注意事项
- 要发明几个新东西
- 新浪微博之XSS蠕虫脚本源码讲解
- KMP字符串模式匹配详解
- 拿什么来拯救你,国足?
- 关于const,内联函数和宏
- cf——C. Arithmetic Progression
- Leetcode_combination-sum-ii
- hit_training_20130328
- pthread_setspecific出现coredump
- 帧、行、场
- 装饰者模式
- Could not write JSON: No serializer found for class org.hibernate.proxy.pojo.javassist.JavassistLazy