鱼C论坛

 找回密码
 立即注册
查看: 14670|回复: 144

[作品展示] 用Python3.4修改的天气预报代码

  [复制链接]
发表于 2014-5-12 09:56:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
昨天把论坛中的天气预报代码看了一下,调试的时候发现只出现2014年3月4日时候的天气情况,不知道是不是不能用了,然后搜了一下,找到了别的json接口,实现如下(不过只能查到当天的天气情况):
  1. #encoding: utf-8
  2. import urllib.request
  3. import json
  4. import pickle
  5. import os
  6. import sys
  7. sys.path.append(r'C:\Python34\Lib\site-packages')

  8. #获取程序运行目录
  9. def current_file_directory():
  10.     import os, sys, inspect
  11.     path = os.path.realpath(sys.path[0])        # interpreter starter's path
  12.     if os.path.isfile(path):                    # starter is excutable file
  13.         path = os.path.dirname(path)
  14.         return os.path.abspath(path)            # return excutable file's directory
  15.     else:                                       # starter is python script
  16.         caller_file = inspect.stack()[1][1]     # function caller's filename
  17.         return os.path.abspath(os.path.dirname(caller_file))# return function caller's

  18. pkl_city = open("{path}\\city.pkl".format(path=current_file_directory()),"rb")
  19. city = pickle.load(pkl_city)
  20. pkl_city.close()

  21. city_name = input('请输入城市名:')
  22. password = city.get(city_name)
  23. [hide]#url_file_name = 'http://m.weather.com.cn/data/{password}.html'.format(password=password)
  24. #url_file = urllib.request.urlopen(url_file_name)
  25. #weatherHTML = url_file.read().decode('utf-8')
  26. #weatherJSON = json.JSONDecoder().decode(weatherHTML)
  27. #weatherInfo = weatherJSON['weatherinfo']

  28. #print('城市:', weatherInfo.get('city'))
  29. #print('时间:', weatherInfo.get('date_y'),weatherInfo.get('week'))
  30. #period=range(1,7)
  31. #for no in period:
  32. # print('-'*50)
  33. # hour=no*24
  34. # print('{hour}小时天气:'.format(hour=hour))
  35. # print('温度:', weatherInfo.get('temp{no}'.format(no=no)))
  36. # print('天气:', weatherInfo.get('weather{no}'.format(no=no)))
  37. # print('风速:', weatherInfo.get('wind{no}'.format(no=no)))

  38. # if no == 1:
  39. # hour=""
  40. # index_d = "index{hour}_d".format(hour=hour)
  41. # if index_d in weatherInfo.keys():
  42. # print('穿衣指数:', weatherInfo.get(index_d))

  43. # index_uv = "index{hour}_uv".format(hour=hour)
  44. # if index_uv in weatherInfo.keys():
  45. # print('紫外线:', weatherInfo.get(index_uv))

  46. url_file_name = 'http://www.weather.com.cn/data/sk/{password}.html'.format(password=password)
  47. url_file = urllib.request.urlopen(url_file_name)
  48. weatherHTML = url_file.read().decode('utf-8')
  49. weatherJSON = json.JSONDecoder().decode(weatherHTML)
  50. weatherInfo = weatherJSON['weatherinfo']

  51. url_file_name = 'http://www.weather.com.cn/data/cityinfo/{password}.html'.format(password=password)
  52. url_file = urllib.request.urlopen(url_file_name)
  53. weatherHTML = url_file.read().decode('utf-8')
  54. weatherJSON = json.JSONDecoder().decode(weatherHTML)
  55. weatherInfo2 = weatherJSON['weatherinfo']
  56. #http://m.weather.com.cn/img/ 图片地址
  57. print('城市:', weatherInfo.get('city'))
  58. print('播报时间:', weatherInfo.get('time'))
  59. print('-'*50)
  60. print('天气:', weatherInfo2.get('weather'),weatherInfo2.get('img1'),weatherInfo2.get('img2'))
  61. print('室外温度:%s℃' % (weatherInfo.get('temp')))
  62. print('温度:%s-%s' % (weatherInfo2.get('temp2'),weatherInfo2.get('temp1')))
  63. print('风力:', weatherInfo.get('WD'), weatherInfo.get('WS'))

  64. input('按回车退出')[/hide]
复制代码
源代码下载
游客,如果您要查看本帖隐藏内容请回复


评分

参与人数 1荣誉 +5 鱼币 +5 收起 理由
小甲鱼 + 5 + 5 热爱鱼C^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-5-12 22:08:08 | 显示全部楼层
看懂啊😤啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-15 14:29:32 | 显示全部楼层
赞啊啊    看那看  谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-15 16:06:37 | 显示全部楼层
各种赞,各种学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-20 23:48:41 | 显示全部楼层
是不是只能看当天的天气??可以看今天的吗??
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-24 19:27:55 | 显示全部楼层
感谢楼主无私奉献!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-5-27 10:10:36 | 显示全部楼层
支持楼主啊,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-16 16:44:26 | 显示全部楼层
这个不错哦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-16 16:54:31 | 显示全部楼层
感谢楼主无私奉献!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-16 18:15:10 | 显示全部楼层
谢谢楼主的无私分享
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-17 14:28:29 | 显示全部楼层
谢谢分享!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-19 13:15:03 | 显示全部楼层
支持                          
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-21 13:58:11 | 显示全部楼层
看看,学学。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-31 19:29:57 | 显示全部楼层
我来看下,初学Python
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-7-31 20:07:56 | 显示全部楼层
饿  谢谢了。。。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-1 22:50:11 | 显示全部楼层
學習學習學習
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-2 21:24:08 | 显示全部楼层
谢谢楼主,很棒,学习了!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-8-2 21:37:39 | 显示全部楼层
顶一个!!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-9-27 10:13:09 | 显示全部楼层
非常好,谢谢分享
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2014-9-28 15:13:54 | 显示全部楼层
:handshake
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 09:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表