新手用python爬虫自己做天气预报查询

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

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

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

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

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

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

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

import requestsfrom lxml import etree

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

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

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

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))

然后开始查找路径

date = html.xpath('//ul[@class="t clearfix"]/li[{}]/h1/text()'.format(i))

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

最后效果如下:

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

代码放上:


喜欢就关注一波呗(^_^),想和小编一起学习Python的,可以 查看小编资料哦。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在上一篇中 , 我们构建了一个爬虫, 可以通过跟踪链接的方式下载我们所需的网页。 但是爬虫在下载网页之后又将 结果...
    枫灬叶阅读 1,977评论 0 5
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,131评论 19 139
  • 昨天引发了我的思考的几个问题: 1.冯威镇做销售很优秀的原因有哪些呢? 首先,做事情的投入度,他为了思考更快的...
    套马的汉子爱学习阅读 181评论 0 0
  • 前两天在淘宝看了一件衣服,一直犹豫好不好看,要不要买,随手加在购物车里,之后就没再管,昨天无意看了一眼购物...
    yunait阅读 251评论 0 1