查询天气信息(Python系列之——爬虫)

在我们生活的每一个天,都有天气(废话!)那我们可以使用Python的BeautifulSoup库就能爬取到天气信息。

1.安装BeautifulSoup与lxml

pip install beautifulsoup4
pip install lxml

2.准备编程

笔者是Python3.11制作的,就拿杭州的信息做:

from bs4 import BeautifulSoup
import requests

url = "http://www.weather.com.cn/weather1d/101210101.shtml"
response = requests.get(url)
response.encoding = "utf-8"
html_doc = response.text

weather_info = {"wea": None, "tem": None, "win": None}
weather = {"daytime": weather_info, "night": weather_info.copy()}
soup = BeautifulSoup(html_doc, "lxml")

print("今日信息:")
wea = soup.select('#today > div.t > ul > li:nth-child(1) > p.wea')
print("天气:"+wea[0].string)
weather['daytime']['wea'] = wea[0].string


tem = soup.select('#today > div.t > ul > li:nth-child(1) > p.tem > span')
print("温度:"+tem[0].string+"℃")
weather['daytime']['tem'] = tem[0].string


win = soup.select('#today > div.t > ul > li:nth-child(1) > p.win > span')
print("风力:"+win[0].string)
weather['daytime']['win'] = win[0].string


print("\n明日信息:")

wea = soup.select('#today > div.t > ul > li:nth-child(2) > p.wea')
print("天气:"+wea[0].string)
weather['night']['wea'] = wea[0].string


tem = soup.select('#today > div.t > ul > li:nth-child(2) > p.tem > span')
print("温度:"+tem[0].string+"℃")
weather['night']['tem'] = tem[0].string


win = soup.select('#today > div.t > ul > li:nth-child(2) > p.win > span')
print("风力:"+win[0].string)
weather['night']['win'] = win[0].string

如果是别的地区,就可以把第4行url的值改动,如北京和深圳的:

# 北京
url = "http://www.weather.com.cn/weather1d/101010100.shtml"
# 深圳
url = "http://www.weather.com.cn/weather1d/101280601.shtml"

3.本章的结尾

看在作者写了这么多代码的份上,给个点赞呗!😘😘😘

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值