设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 6155|回复: 7
打印 上一主题 下一主题

求助:天气查询遇到的问题—— 一直“查询失败”

[复制链接]

9

主题

0

好友

75

积分

注册会员

Rank: 2

跳转到指定楼层
楼主
发表于 2018-4-5 17:04:52 |只看该作者 |倒序浏览
本帖最后由 Ambition——xb 于 2018-4-5 17:38 编辑

# _*_ coding: utf-8 _*_
print('============查询天气=============')
import urllib.request
import json

'''
用我提供的城市代码列表city.py。

city.py这个文件里有一个叫做city的字典,
它里面的key是城市的名称,value是对应的城市代码。
不用把它copy到自己的程序中,只要放在和你的代码同一路径下,用

from city import city

就可以引入city这个字典。这里相当于用了一个自定义的模块,
前一个“city”是模块名,也就是py文件的名称,后一个“city”是模块中变量的名称。
'''
from city import city
cityname=input('你想知道哪个城市的天气?\n')
citycode=city.get(cityname)
if citycode:
    try:
        ur1=('http://www.weather.com.cn/data/cityinfo/%s.html'%citycode)
        contern=urllib.request.urlopen(ur1).read()
        data=json.loads(content)
        result=data['weatherinfo']
        str_temp=('%s\n%s~%s')%(
            result['weather'],
            result['temp1'],
            result['temp2']
            )
        print(str_temp)
    except:
        print('查询失败')
else:
    print('没有找到该城市')

一直“查询失败”是什么原因









回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

沙发
发表于 2018-4-6 00:10:48 |只看该作者
把你请求的地址print出来,放到浏览器里看看
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

9

主题

0

好友

75

积分

注册会员

Rank: 2

板凳
发表于 2018-4-10 18:34:58 |只看该作者
crossin先生 发表于 2018-4-6 00:10
把你请求的地址print出来,放到浏览器里看看

刚突然发现有个英文字母打错了 已解决了,谢谢
回复

使用道具 举报

0

主题

0

好友

12

积分

新手上路

Rank: 1

地板
发表于 2018-4-11 21:42:05 |只看该作者
Ambition——xb 发表于 2018-4-10 18:34
刚突然发现有个英文字母打错了 已解决了,谢谢

请问是哪里错了,,我也遇到了同样的问题,不知道怎么解决。。。
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

5#
发表于 2018-4-11 21:52:22 |只看该作者
太阳雨2018 发表于 2018-4-11 21:42
请问是哪里错了,,我也遇到了同样的问题,不知道怎么解决。。。

他这个都没有报错(被try隐藏掉了),你是如何看出跟他“同样的问题”……
如果你是没有结果,那可能是编码没用gbk,看下 查天气1 里的说明和下面的回帖,找一找跟你情况一致的
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

12

积分

新手上路

Rank: 1

6#
发表于 2018-4-11 21:56:29 |只看该作者
太阳雨2018 发表于 2018-4-11 21:42
请问是哪里错了,,我也遇到了同样的问题,不知道怎么解决。。。

我找到了错误地方了,我漏掉了result=data['weatherinfo']这个中括号里的引号~
回复

使用道具 举报

0

主题

0

好友

12

积分

新手上路

Rank: 1

7#
发表于 2018-4-11 21:58:38 |只看该作者
crossin先生 发表于 2018-4-11 21:52
他这个都没有报错(被try隐藏掉了),你是如何看出跟他“同样的问题”……
如果你是没有结果,那可能是编 ...

嗯嗯,我的也是没有报错,只是一直会输出查询失败,,我找到错误地方了,漏了个引号
回复

使用道具 举报

9

主题

0

好友

75

积分

注册会员

Rank: 2

8#
发表于 2018-4-12 09:38:01 |只看该作者
太阳雨2018 发表于 2018-4-11 21:58
嗯嗯,我的也是没有报错,只是一直会输出查询失败,,我找到错误地方了,漏了个引号 ...

回复

使用道具 举报

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

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

GMT+8, 2024-11-24 05:56 , Processed in 0.015169 second(s), 22 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部