前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python爬虫的简单实现!用python爬虫自己做天气预报查询

Python爬虫的简单实现!用python爬虫自己做天气预报查询

作者头像
云飞
发布2018-09-13 16:51:53
6790
发布2018-09-13 16:51:53
举报
文章被收录于专栏:云飞学编程云飞学编程

最近小编在学习爬虫,就想找个东西练练手,小说、图片、音乐什么的都烂大街了,正好最近天气是越来越冷,小编窝家里自己敲了个天气简单查询的代码,请大家指正下!

先找目标,最终还是选用了中国天气网,url:http://www.weather.com.cn/

找到目标后,开始分析网页,发现里面是支持查询,并且查询的城市和url又一定的规律,如下:

百度下后,发现url中的数字是城市代码,这就简单了,先把代码弄到,然后做成字典。

然后,分析网页的元素,发现近7天的预报都已经整整齐齐的放在那里了,这就简单了,开始写代码吧!

选定方法,这里小编用的是xpath,方便、快捷。

需要提前安装lxml库,然后导入

代码语言:javascript
复制
import requestsfrom lxml import etree

为了方便查询,直接写input,然后拼接网址

代码语言:javascript
复制
city = input("请输入要查询的城市:")city_code = city_code_list[city]home_page = 'http://www.weather.com.cn'url = home_page + '/weather/' + city_code + '.shtml'

解析拼接好的网址,这里小编用requests获取get内容

代码语言:javascript
复制
def get_html(url):header = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0'}html = requests.get(url, headers=header)html.encoding = 'utf-8'return html.texthtml = etree.HTML(get_html(url))

然后开始查找路径

代码语言:javascript
复制
date = html.xpath('//ul[@class="t clearfix"]/li[{}]/h1/text()'.format(i))

由于7天的预报都是在li标签下的,所以写到循环中,print输出即完成!

最后效果如下:

简单的功能实现,成就感满满的!

代码放上:

推荐下小编的Python学习群5421107414,不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括小编自己整理的一份2018最新的Python和0基础入门教程,欢迎初学和进阶中的小伙伴。 点击链接即可加入python的大家庭哦!http://dwz.cn/7iuNsE

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-02-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云飞学python 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 先找目标,最终还是选用了中国天气网,url:http://www.weather.com.cn/
  • 选定方法,这里小编用的是xpath,方便、快捷。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档