请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin

【Python 第43课】 查天气(1)

[复制链接]

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2017-8-24 11:40:31 |显示全部楼层
blueheart 发表于 2017-8-24 10:36
城市列表city.py不全啊,有很多地方(特别是某些区县)都没有的,请问作者如何获取最全的城市列表呢? ...

原始数据就是有问题。
数据源查看本贴最前面的链接和说明
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

1

主题

0

好友

80

积分

注册会员

Rank: 2

发表于 2017-8-24 17:46:21 |显示全部楼层
crossin先生 发表于 2017-8-24 11:40
原始数据就是有问题。
数据源查看本贴最前面的链接和说明

哦哦,谢谢您
回复

使用道具 举报

3

主题

0

好友

64

积分

注册会员

Rank: 2

发表于 2017-10-30 21:10:04 |显示全部楼层
请问下,urllib2和json两个模块是不是Python3自带的没有,要去https://pypi.python.org/下载?
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2017-10-31 10:52:42 |显示全部楼层
Aquamarine 发表于 2017-10-30 21:10
请问下,urllib2和json两个模块是不是Python3自带的没有,要去https://pypi.python.org/下载? ...

json有的
urllib2 变成 urllib3 和 urllib.request,你网上搜下使用方法即可
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

3

主题

0

好友

64

积分

注册会员

Rank: 2

发表于 2017-10-31 23:04:06 |显示全部楼层
本帖最后由 Aquamarine 于 2017-10-31 23:29 编辑
crossin先生 发表于 2017-10-31 10:52
json有的
urllib2 变成 urllib3 和 urllib.request,你网上搜下使用方法即可

感谢指教,用urllib.request通过。
回复

使用道具 举报

0

主题

2

好友

46

积分

新手上路

Rank: 1

发表于 2018-4-25 12:22:05 |显示全部楼层
请问怎么去网站上抓数据啊,附加题。。
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-4-25 15:13:30 |显示全部楼层
coolqing 发表于 2018-4-25 12:22
请问怎么去网站上抓数据啊,附加题。。

跟查天气的思路一样,找地址、发请求、处理返回的文本
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

4

积分

新手上路

Rank: 1

发表于 2018-8-6 10:01:17 |显示全部楼层
想知道现在的天气接口是哪一个?
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2018-8-6 15:50:06 |显示全部楼层
chenkeke 发表于 2018-8-6 10:01
想知道现在的天气接口是哪一个?

可以用的:http://www.weather.com.cn/data/cityinfo/101010100.html

看本贴开头的说明
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

6

积分

新手上路

Rank: 1

发表于 2018-8-10 10:21:52 |显示全部楼层
查询结果出错了 好像是输入的“北京”编码有错?url识别不了?
但我不懂怎么改。。。

#coding:cp936
import urllib2
import gzip
from StringIO import StringIO

cityname=raw_input('你想查哪个城市的天气?\n')
url='http://wthrcdn.etouch.cn/weather_mini?city=%s'%cityname
content=urllib2.urlopen(url).read() #读取天气信息

#gzip解压
buf = StringIO(content)
f = gzip.GzipFile(fileobj=buf)
content = f.read()

print content


======== RESTART: C:\Users\Administrator\Desktop\003_WeatherReport.py ========
你想查哪个城市的天气?
北京
{"status":1002,"desc":"invilad-citykey"}
>>>
回复

使用道具 举报

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

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

GMT+8, 2024-3-29 07:18 , Processed in 0.018148 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部