设为首页收藏本站

Crossin的编程教室

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

【Python 第44课】 查天气(2)

  [复制链接]

0

主题

0

好友

48

积分

新手上路

Rank: 1

楼主
发表于 2018-6-7 17:58:36 |显示全部楼层
用了一楼同学的方法,但是一直报403的错误,走不下去了,求教

1.png (98.93 KB, 下载次数: 229)

1.png

回复

使用道具 举报

0

主题

0

好友

48

积分

新手上路

Rank: 1

沙发
发表于 2018-6-8 10:31:42 |显示全部楼层
换了一个接口,但是一直报编码错误,发现网页返回的是gzip的数据,还需要对数据进行解压,网上查了一些相关资料写的,出来的结果虽然觉得还是有一点奇怪,但是起码不是报错和乱码的了
环境是python3
  1. #-*- coding: UTF-8 -*-
  2. import urllib.request
  3. import json
  4. from city import city
  5. import gzip

  6. cityname=input('你要查询的城市名称:')

  7. citycode=city.get(cityname)
  8. if citycode:
  9.     url=("http://wthrcdn.etouch.cn/weather_mini?citykey=%s"%citycode)
  10.     response=urllib.request.urlopen(url).read()
  11.     #print(response)
  12.     try:
  13.         content = gzip.decompress(response).decode("utf-8")
  14.     except:
  15.         content=response.decode("utf-8")
  16.     print(content)
复制代码
回复

使用道具 举报

0

主题

0

好友

48

积分

新手上路

Rank: 1

板凳
发表于 2018-6-8 11:53:23 |显示全部楼层
crossin先生 发表于 2018-6-8 11:11
gzip解压帖子里也有写
或者可以用 requests 来抓,更简单

刚刚看3的回复才发现先生已经给出相关的解答了,昨天我还自己找问题找了好久,我再去研究一下用更简单的方法,谢谢先生!
回复

使用道具 举报

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

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

GMT+8, 2024-5-16 03:29 , Processed in 0.029384 second(s), 26 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部