excel抓取多页网页数据(本文讲解如何抓取实时天气以及天气预报数据(图) )
优采云 发布时间: 2021-10-26 05:17excel抓取多页网页数据(本文讲解如何抓取实时天气以及天气预报数据(图)
)
本文讲解了如何捕捉实时天气和天气预报数据,通过Power BI调用高德地图Weather API提取数据,使用SVG图片制作各种天气图标,最后制作地图或表格进行天气展示。
数据采集部分适用于Power BI和Excel,动态图表部分适用于Power BI。最后,可以呈现以下效果。
您可以将鼠标指向地图上的任何城市以显示暂停的天气:
可以直接在地图上显示:
它也可以以表格样式显示:
1.天气数据提取
在高德地图开放平台()免费申请WEB服务API,获取KEY(网上有相应教程)。
不同的城市有相应的代码。代码是识别城市的唯一依据。代码列表可以在这里下载。
部分编码
将城市代码表导入 Power BI 并添加以下自定义列:
Json.Document( Web.Contents(";city="&[adcode]&"&output=JSON&key=KEY 你申请的"))
这个公式的意思是通过adcode列调用实时天气数据,返回JSON格式。如果您需要的不是实时天气,而是未来几天的预报信息,则需要在代码中添加一个额外的参数“extensions”,如下所示:
Json.Document( Web.Contents(";city="&[adcode]&"&output=JSON&key=KEY&extensions=all"))
更多参数详情请参考
展开数据后,可以得到实时天气:
实时天气官方每小时更新多次,预报天气每天更新3次,分别在18:00左右。由于天气数据的特殊性和数据更新的连续性,无法确定准确的更新时间。具体更新时间以接口返回数据的reporttime字段为准。
2.SVG 天气图标导入
主要天气条件有雪、雷雨、雨、阴、阴、晴等。Power BI支持SVG图像显示。在网上找到对应的天气SVG图片,将SVG代码保存到Excel中,然后导入Power BI。
天气SVG表
Weather SVG 引入城市代码表
SVG 代码使用以下字段连接并标记为“图像 URL”格式:
"data:image/svg+xml;utf8,"&RELATED('天气SVG'[SVG])
主要天气条件的SVG代码可以在这里找到,“晴天”代码如下:
3.图表制作
对于浮动提醒在地图上的展示方式,首先创建一个单独的提醒页面,使用卡片地图、表格等图表样式进行如下设计(这里页面命名为“天气”)。
打开该页面的“工具提示”,将页面大小类型设置为“工具提示”:
最后打开地图页面,选择地图,在“工具提示”设置中选择上面设计的提示页面。至此,浮动天气提醒功能设置完成。
对于直接在地图上显示的方法,将所需字段放置在 Location 中并向下钻取到底部。
对于表格显示,只需拖动字段,如下所示。