鱼C论坛

 找回密码
 立即注册
查看: 5826|回复: 17

[已解决]课时31里面的天气查询代码在哪里可以找到?

[复制链接]
发表于 2017-10-11 18:14:14 | 显示全部楼层 |阅读模式

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

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

x
大神你好:
我想问问那个  小甲鱼老师用的那个‘天气查询代码’在哪里可以找到?
谢谢!
最佳答案
2017-10-11 21:08:24
  1. import urllib.request
  2. import gzip
  3. import json
  4. print('------天气查询------')
  5. def get_weather_data() :
  6.     city_name = input('请输入要查询的城市名称:')
  7.     url1 = 'http://wthrcdn.etouch.cn/weather_mini?city='+urllib.parse.quote(city_name)
  8.     url2 = 'http://wthrcdn.etouch.cn/weather_mini?citykey=101010100'
  9.     #网址1只需要输入城市名,网址2需要输入城市代码
  10.     #print(url1)
  11.     weather_data = urllib.request.urlopen(url1).read()
  12.     #读取网页数据
  13.     weather_data = gzip.decompress(weather_data).decode('utf-8')
  14.     #解压网页数据
  15.     weather_dict = json.loads(weather_data)
  16.     #将json数据转换为dict数据
  17.     return weather_dict

  18. def show_weather(weather_data):
  19.     weather_dict = weather_data
  20.     #将json数据转换为dict数据
  21.     if weather_dict.get('desc') == 'invilad-citykey':
  22.         print('你输入的城市名有误,或者天气中心未收录你所在城市')
  23.     elif weather_dict.get('desc') =='OK':
  24.         forecast = weather_dict.get('data').get('forecast')
  25.         print('城市:',weather_dict.get('data').get('city'))
  26.         print('温度:',weather_dict.get('data').get('wendu')+'℃ ')
  27.         print('感冒:',weather_dict.get('data').get('ganmao'))
  28.         print('风向:',forecast[0].get('fengxiang'))
  29.         print('风级:',forecast[0].get('fengli'))
  30.         print('高温:',forecast[0].get('high'))
  31.         print('低温:',forecast[0].get('low'))
  32.         print('天气:',forecast[0].get('type'))
  33.         print('日期:',forecast[0].get('date'))
  34.         print('*******************************')
  35.         four_day_forecast =input('是否要显示未来四天天气,是/否:')
  36.         if four_day_forecast == '是' or 'Y' or 'y':
  37.             for i in range(1,5):
  38.                 print('日期:',forecast[i].get('date'))
  39.                 print('风向:',forecast[i].get('fengxiang'))
  40.                 print('风级:',forecast[i].get('fengli'))
  41.                 print('高温:',forecast[i].get('high'))
  42.                 print('低温:',forecast[i].get('low'))
  43.                 print('天气:',forecast[i].get('type'))
  44.                 print('--------------------------')
  45.     print('***********************************')

  46. show_weather(get_weather_data())
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-10-11 21:08:24 | 显示全部楼层    本楼为最佳答案   
  1. import urllib.request
  2. import gzip
  3. import json
  4. print('------天气查询------')
  5. def get_weather_data() :
  6.     city_name = input('请输入要查询的城市名称:')
  7.     url1 = 'http://wthrcdn.etouch.cn/weather_mini?city='+urllib.parse.quote(city_name)
  8.     url2 = 'http://wthrcdn.etouch.cn/weather_mini?citykey=101010100'
  9.     #网址1只需要输入城市名,网址2需要输入城市代码
  10.     #print(url1)
  11.     weather_data = urllib.request.urlopen(url1).read()
  12.     #读取网页数据
  13.     weather_data = gzip.decompress(weather_data).decode('utf-8')
  14.     #解压网页数据
  15.     weather_dict = json.loads(weather_data)
  16.     #将json数据转换为dict数据
  17.     return weather_dict

  18. def show_weather(weather_data):
  19.     weather_dict = weather_data
  20.     #将json数据转换为dict数据
  21.     if weather_dict.get('desc') == 'invilad-citykey':
  22.         print('你输入的城市名有误,或者天气中心未收录你所在城市')
  23.     elif weather_dict.get('desc') =='OK':
  24.         forecast = weather_dict.get('data').get('forecast')
  25.         print('城市:',weather_dict.get('data').get('city'))
  26.         print('温度:',weather_dict.get('data').get('wendu')+'℃ ')
  27.         print('感冒:',weather_dict.get('data').get('ganmao'))
  28.         print('风向:',forecast[0].get('fengxiang'))
  29.         print('风级:',forecast[0].get('fengli'))
  30.         print('高温:',forecast[0].get('high'))
  31.         print('低温:',forecast[0].get('low'))
  32.         print('天气:',forecast[0].get('type'))
  33.         print('日期:',forecast[0].get('date'))
  34.         print('*******************************')
  35.         four_day_forecast =input('是否要显示未来四天天气,是/否:')
  36.         if four_day_forecast == '是' or 'Y' or 'y':
  37.             for i in range(1,5):
  38.                 print('日期:',forecast[i].get('date'))
  39.                 print('风向:',forecast[i].get('fengxiang'))
  40.                 print('风级:',forecast[i].get('fengli'))
  41.                 print('高温:',forecast[i].get('high'))
  42.                 print('低温:',forecast[i].get('low'))
  43.                 print('天气:',forecast[i].get('type'))
  44.                 print('--------------------------')
  45.     print('***********************************')

  46. show_weather(get_weather_data())
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2017-10-12 12:27:33 | 显示全部楼层
本帖最后由 枫丹白露666 于 2017-10-12 12:41 编辑

你好,我是想要课时31里面小甲鱼老师修改的那个  “自己写的天气查询代码”

55555.png
55555.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-29 14:18:15 | 显示全部楼层
我也想知道
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-10-30 21:22:48 | 显示全部楼层
666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2017-10-31 20:06:24 | 显示全部楼层
枫丹白露666 发表于 2017-10-12 12:27
你好,我是想要课时31里面小甲鱼老师修改的那个  “自己写的天气查询代码”

对,就是这个!
但是那个天气api接口和以前的不一样了,现在不能用了,

你有那个视频里的那个源代码吗?和视频里一模一样的,我想下载下
谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-6 11:41:17 | 显示全部楼层
我也想找来做练习!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-8 21:20:38 | 显示全部楼层
请问这段代码还有吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-3-17 18:23:33 | 显示全部楼层
666666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-13 19:42:03 | 显示全部楼层
都是人才,都是雷锋!那个城市字典在哪里呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-23 16:25:58 | 显示全部楼层
哈哈  我也是来这里找这个
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-6 17:15:24 | 显示全部楼层
我看有人暂停半个小时,自己编了一次那个字典。。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-10-5 15:42:48 | 显示全部楼层
厉害
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-10-10 11:11:27 | 显示全部楼层
我也来找
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-18 22:58:53 | 显示全部楼层

  1. f = open('E:\\test.txt','r',encoding='utf-8')
  2. f_dict={}
  3. for line in f :
  4.     line_s = line.split('市')[0]
  5.     line0 = line_s.split('\t')[0]
  6.     line1 = line_s.split('\t')[1]
  7.     f_dict[line1]=line0
  8. f.close()
  9. print(f_dict)
  10.    
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-18 22:59:55 | 显示全部楼层

电脑e盘新建一个txt文本,130100        石家庄市         河北省
130200        唐山市         河北省
130300        秦皇岛市         河北省
130400        邯郸市         河北省
130500        邢台市         河北省
130600        保定市         河北省
130700        张家口市         河北省
130800        承德市         河北省
130900        沧州市         河北省
131000        廊坊市         河北省
131100        衡水市         河北省
110000        北京市         北京市
120000        天津市         天津市
140100        太原市         山西省
140200        大同市         山西省
140300        阳泉市         山西省
140400        长治市         山西省
140500        晋城市         山西省
140600        朔州市         山西省
140700        晋中市         山西省
140800        运城市         山西省
140900        忻州市         山西省
141000        临汾市         山西省
141100        吕梁市         山西省
150100        呼和浩特市         内蒙古自治区
150200        包头市         内蒙古自治区
150300        乌海市         内蒙古自治区
150400        赤峰市         内蒙古自治区
150500        通辽市         内蒙古自治区
150600        鄂尔多斯市         内蒙古自治区
150700        呼伦贝尔市         内蒙古自治区
150800        巴彦淖尔市         内蒙古自治区
150900        乌兰察布市         内蒙古自治区
152100        呼伦贝尔盟        内蒙古自治区
152200        兴安盟         内蒙古自治区
152300        哲里木盟         内蒙古自治区
152400        昭乌达盟         内蒙古自治区
152500        锡林郭勒盟         内蒙古自治区
152600        乌兰察布盟         内蒙古自治区
152700        伊克昭盟         内蒙古自治区
152800        巴彦淖尔盟         内蒙古自治区
152900        阿拉善盟         内蒙古自治区
210100        沈阳市         辽宁省
210200        大连市         辽宁省
210300        鞍山市         辽宁省
210400        抚顺市         辽宁省
210500        本溪市         辽宁省
210600        丹东市         辽宁省
210700        锦州市         辽宁省
210800        营口市         辽宁省
210900        阜新市         辽宁省
211000        辽阳市         辽宁省
211100        盘锦市         辽宁省
211200        铁岭市         辽宁省
211300        朝阳市         辽宁省
211400        葫芦岛市         辽宁省
220100        长春市         吉林省
220200        吉林市         吉林省
220300        四平市         吉林省
220400        辽源市         吉林省
220500        通化市         吉林省
220600        白山市         吉林省
220700        松原市         吉林省
220800        白城市         吉林省
230100        哈尔滨市         黑龙江省
230200        齐齐哈尔市         黑龙江省
230300        鸡西市         黑龙江省
230400        鹤岗市         黑龙江省
230500        双鸭山市         黑龙江省
230600        大庆市         黑龙江省
230700        伊春市         黑龙江省
230800        佳木斯市         黑龙江省
230900        七台河市         黑龙江省
231000        牡丹江市         黑龙江省
231100        黑河市         黑龙江省
231200        绥化市         黑龙江省
310000        上海市         上海市
320100        南京市         江苏省
320200        无锡市         江苏省
320300        徐州市         江苏省
320400        常州市         江苏省
320500        苏州市         江苏省
320600        南通市         江苏省
320700        连云港市         江苏省
320800        淮安市         江苏省
320900        盐城市         江苏省
321000        扬州市         江苏省
321100        镇江市         江苏省
321200        泰州市         江苏省
321300        宿迁市         江苏省
330100        杭州市         浙江省
330200        宁波市         浙江省
330300        温州市         浙江省
330400        嘉兴市         浙江省
330500        湖州市         浙江省
330600        绍兴市         浙江省
330700        金华市         浙江省
330800        衢州市         浙江省
330900        舟山市         浙江省
331000        台州市         浙江省
331100        丽水市         浙江省
340100        合肥市         安徽省
340200        芜湖市         安徽省
340300        蚌埠市         安徽省
340400        淮南市         安徽省
340500        马鞍山市         安徽省
340600        淮北市         安徽省
340700        铜陵市         安徽省
340800        安庆市         安徽省
340900        黄山市         安徽省
341000        黄山市         安徽省
341100        滁州市         安徽省
341200        阜阳市         安徽省
341300        宿州市         安徽省
341400        巢湖市         安徽省
341500        六安市         安徽省
341600        亳州市         安徽省
341700        池州市         安徽省
341800        宣城市         安徽省
350100        福州市         福建省
350200        厦门市         福建省
350300        莆田市         福建省
350400        三明市         福建省
350500        泉州市         福建省
350600        漳州市         福建省
350700        南平市         福建省
350800        龙岩市         福建省
350900        宁德市         福建省
360100        南昌市         江西省
360200        景德镇市         江西省
360300        萍乡市         江西省
360400        九江市         江西省
360500        新余市         江西省
360600        鹰潭市         江西省
360700        赣州市         江西省
360800        吉安市         江西省
360900        宜春市         江西省
361000        抚州市         江西省
361100        上饶市         江西省
370100        济南市         山东省
370200        青岛市         山东省
370300        淄博市         山东省
370400        枣庄市         山东省
370500        东营市         山东省
370600        烟台市         山东省
370700        潍坊市         山东省
370800        济宁市         山东省
370900        泰安市         山东省
371000        威海市         山东省
371100        日照市         山东省
371200        莱芜市         山东省
371300        临沂市         山东省
371400        德州市         山东省
371500        聊城市         山东省
371600        滨州市         山东省
371700        菏泽市         山东省
410100        郑州市         河南省
410200        开封市         河南省
410300        洛阳市         河南省
410400        平顶山市         河南省
410500        安阳市         河南省
410600        鹤壁市         河南省
410700        新乡市         河南省
410800        焦作市         河南省
410900        濮阳市         河南省
411000        许昌市         河南省
411100        漯河市         河南省
411200        三门峡市         河南省
411300        南阳市         河南省
411400        商丘市         河南省
411500        信阳市         河南省
411600        周口市         河南省
411700        驻马店市         河南省
420100        武汉市         湖北省
420200        黄石市         湖北省
420300        十堰市         湖北省
420400        沙市市        湖北省
420500        宜昌市         湖北省
420600        襄阳市         湖北省
420700        鄂州市         湖北省
420800        荆门市         湖北省
420900        孝感市         湖北省
421000        荆州市         湖北省
421100        黄冈市         湖北省
421200        咸宁市         湖北省
421300        随州市         湖北省
422800        恩施土家族苗族自治州         湖北省
430100        长沙市         湖南省
430200        株洲市         湖南省
430300        湘潭市         湖南省
430400        衡阳市         湖南省
430500        邵阳市         湖南省
430600        岳阳市         湖南省
430700        常德市         湖南省
430800        张家界市         湖南省
430900        益阳市         湖南省
431000        郴州市         湖南省
431100        永州市         湖南省
431200        怀化市         湖南省
431300        娄底市         湖南省
432300        益阳市         湖南省
433100        湘西土家族苗族自治州         湖南省
440100        广州市         广东省
440200        韶关市         广东省
440300        深圳市         广东省
440400        珠海市         广东省
440500        汕头市         广东省
440600        佛山市         广东省
440700        江门市         广东省
440800        湛江市         广东省
440900        茂名市         广东省
441000        海口市        广东省
441200        肇庆市         广东省
441300        惠州市         广东省
441400        梅州市         广东省
441500        汕尾市         广东省
441600        河源市         广东省
441700        阳江市         广东省
441800        清远市         广东省
441900        东莞市         广东省
442000        中山市         广东省
442100        海南行政区         广东省
442200        三亚市        广东省
445100        潮州市         广东省
445200        揭阳市         广东省
445300        云浮市         广东省
450100        南宁市         广西壮族自治区
450200        柳州市         广西壮族自治区
450300        桂林市         广西壮族自治区
450400        梧州市         广西壮族自治区
450500        北海市         广西壮族自治区
450600        防城港市         广西壮族自治区
450700        钦州市         广西壮族自治区
450800        贵港市         广西壮族自治区
450900        玉林市         广西壮族自治区
451000        百色市         广西壮族自治区
451100        贺州市         广西壮族自治区
451200        河池市         广西壮族自治区
451300        来宾市         广西壮族自治区
451400        崇左市         广西壮族自治区
460100        海口市         海南省
460200        三亚市         海南省
460300        三沙市         海南省
500000        重庆市         重庆市
510100        成都市         四川省
510300        自贡市         四川省
510400        攀枝花市         四川省
510500        泸州市         四川省
510600        德阳市         四川省
510700        绵阳市         四川省
510800        广元市         四川省
510900        遂宁市         四川省
511000        内江市         四川省
511100        乐山市         四川省
511300        南充市         四川省
511400        眉山市         四川省
511500        宜宾市         四川省
511600        广安市         四川省
511700        达州市         四川省
511800        雅安市         四川省
511900        巴中市         四川省
512000        资阳市         四川省
513200        阿坝藏族羌族自治州         四川省
513300        甘孜藏族自治州         四川省
513400        凉山彝族自治州         四川省
520100        贵阳市         贵州省
520200        六盘水市         贵州省
520300        遵义市         贵州省
520400        安顺市         贵州省
520500        毕节市         贵州省
520600        铜仁市         贵州省
522300        黔西南布依族苗族自治州         贵州省
522600        黔东南苗族侗族自治州         贵州省
522700        黔南布依族苗族自治州         贵州省
530100        昆明市         云南省
530200        东川市         云南省
530300        曲靖市         云南省
530400        玉溪市         云南省
530500        保山市         云南省
530600        昭通市         云南省
530700        丽江市         云南省
530800        普洱市         云南省
530900        临沧市         云南省
532300        楚雄彝族自治州         云南省
532500        红河哈尼族彝族自治州         云南省
532600        文山壮族苗族自治州         云南省
532800        西双版纳傣族自治州         云南省
532900        大理白族自治州         云南省
533100        德宏傣族景颇族自治州         云南省
533300        怒江傈僳族自治州         云南省
533400        迪庆藏族自治州         云南省
540100        拉萨市         西藏自治区
540200        日喀则市         西藏自治区
610100        西安市         陕西省
610200        铜川市         陕西省
610300        宝鸡市         陕西省
610400        咸阳市         陕西省
610500        渭南市         陕西省
610600        延安市         陕西省
610700        汉中市         陕西省
610800        榆林市         陕西省
610900        安康市         陕西省
611000        商洛市         陕西省
612300        汉中市        陕西省
620100        兰州市         甘肃省
620200        嘉峪关市         甘肃省
620300        金昌市         甘肃省
620400        白银市         甘肃省
620500        天水市         甘肃省
620600        武威市         甘肃省
620700        张掖市         甘肃省
620800        平凉市         甘肃省
620900        酒泉市         甘肃省
621000        庆阳市         甘肃省
621100        定西市         甘肃省
621200        陇南市         甘肃省
622900        临夏回族自治州         甘肃省
623000        甘南藏族自治州         甘肃省
630100        西宁市         青海省
630200        海东市         青海省
632200        海北藏族自治州         青海省
632300        黄南藏族自治州         青海省
632500        海南藏族自治州         青海省
632600        果洛藏族自治州         青海省
632700        玉树藏族自治州         青海省
632800        海西蒙古族藏族自治州         青海省
640100        银川市         宁夏回族自治区
640200        石嘴山市         宁夏回族自治区
640300        吴忠市         宁夏回族自治区
640400        固原市         宁夏回族自治区
640500        中卫市         宁夏回族自治区
650100        乌鲁木齐市         新疆维吾尔自治区
650200        克拉玛依市         新疆维吾尔自治区
650300        石河子市        新疆维吾尔自治区
652300        昌吉回族自治州         新疆维吾尔自治区
652400        伊犁哈萨克自治州        新疆维吾尔自治区
652700        博尔塔拉蒙古自治州         新疆维吾尔自治区
652800        巴音郭楞蒙古自治州         新疆维吾尔自治区
653000        克孜勒苏柯尔克孜自治州         新疆维吾尔自治区
654000        伊犁哈萨克自治州         新疆维吾尔自治区
659000        自治区直辖县级行政区划         新疆维吾尔自治区
710000        台湾省         台湾省
810000        香港特别行政区         香港特别行政区
820000        澳门特别行政区         澳门特别行政区
   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-19 00:27:50 | 显示全部楼层
洛与春风 发表于 2022-4-18 22:59
电脑e盘新建一个txt文本,130100        石家庄市         河北省
130200        唐山市         河北省
130300        秦皇岛市         河北省  ...

将改文本复制粘贴进txt,通过上代码可得到字典
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-1 18:01:08 | 显示全部楼层
我也在找小甲鱼的那个原文件,找不到啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 02:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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