如何爬取城市天气

前提条件

  • 1.首先确保当前固件依赖包是否完整
help(“modules”)

准备天气api

{
  "weatherinfo": 
  {
    "city": "荆州",
    "cityid": "101200801",
    "img1": "n7.gif",
    "img2": "d2.gif",
    "ptime": "18:00",
    "temp1": "16℃",
    "temp2": "23℃",
    "weather": "小雨转阴"
  }
}
  • 我们可以分析这些json文件写出下面这样的实例

实例分析


import urequests
from microbit import *

def get_weather():
    url = "http://www.weather.com.cn/data/cityinfo/101200801.html"
    rsp = urequests.get(url)
    data = eval(rsp.text) # eval函数用于把字符串类型的json数据->转为python的字典类型
    weather = data["weatherinfo"]
    L = weather["temp1"] #最低温
    H = weather["temp2"] #最高温
    return "L:" + L[:-1] + " H:" + H[:-1] # 数据样例->  L:16 H:23

display.scroll(get_weather())

# L[:-1] H[:-1]去掉℃和℉两个特殊符号,否则会出现编码错误