首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

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

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

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

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

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

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

import requests

from 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 (Win***********o/20100101 Firefox/57.0'}#大家可以找自己的头部信息

html = requests.get(url, headers=header)

html.encoding = 'utf-8'

return html.text

html = etree.HTML(get_html(url))

然后开始查找路径

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

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

最后效果如下:

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

代码放上(已经省略上方的城市代码部分,可自行到百度查询,按格式写上就行):

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

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180203A09NV900?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券