设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin先生
打印 上一主题 下一主题

【Python 第45课】 查天气(3)

[复制链接]

1

主题

0

好友

35

积分

新手上路

Rank: 1

楼主
发表于 2017-9-21 10:04:48 |显示全部楼层
  1. # -*- coding: cp936 -*-
  2. import urllib2
  3. import json
  4. from city import city

  5. cityname = raw_input('你想查哪个城市的天气?\n')
  6. citycode = city.get(cityname)
  7. if citycode:
  8.         try:
  9.                 url = ('http://www.weather.com.cn/data/cityinfo/%s.html'
  10.                        % city_code)
  11.                 content = urllib2.urlopen(url).read()
  12.                 data = json.loads(content)
  13.                 result = data['weatherinfo']
  14.                 str_temp = ('%s\n%s ~ %s')%(
  15.                         result['weather'],
  16.                         result['temp1'],
  17.                         result['tmep2']
  18.                 )
  19.                 print str_temp
  20.         except:
  21.                 print '查询失败'
  22. else:
  23.         print '没有找到该城市'
复制代码
  1. Python 2.7.9 (default, Dec 10 2014, 12:24:55) [MSC v.1500 32 bit (Intel)] on win32
  2. Type "copyright", "credits" or "license()" for more information.
  3. >>> ================================ RESTART ================================
  4. >>>
  5. 你想查哪个城市的天气?
  6. 北京
  7. 查询失败
  8. >>> ================================ RESTART ================================
  9. >>>
  10. 你想查哪个城市的天气?
  11. 西安
  12. 查询失败
  13. >>> ================================ RESTART ================================
  14. >>>
  15. 你想查哪个城市的天气?
  16. 什么鬼
  17. 没有找到该城市
  18. >>>
复制代码
回复

使用道具 举报

1

主题

0

好友

35

积分

新手上路

Rank: 1

沙发
发表于 2017-9-21 10:05:30 |显示全部楼层
chchch0720 发表于 2017-9-21 10:04

先生,city.py我用的您的代码,前面也加过了cp936
回复

使用道具 举报

1

主题

0

好友

35

积分

新手上路

Rank: 1

板凳
发表于 2017-9-22 09:15:03 |显示全部楼层
crossin先生 发表于 2017-9-21 13:50
应该不是编码问题
把 try...except 去掉,或者在except里输出报错信息,看看报什么错。不然报错都被你的 ...

Traceback (most recent call last):
  File "C:\Python27\Crossin\44weather.py", line 18, in <module>
    result['tmep2']
KeyError: 'tmep2'

应该用get嘛?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-5-7 22:55 , Processed in 0.027051 second(s), 22 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部