← 返回题库
初级

解析屏幕心跳上报JSON

未完成
初级参考 完整示例代码供参考,建议自己理解后重新输入
def solve():
    from pyodide.http import open_url
    from io import StringIO
    import pandas as pd
    hb_csv = open_url("https://data.zuihe.com/dbd/ms-adlift/state_01/heartbeat_logs.csv").read()
    hb = pd.read_csv(StringIO(hb_csv))
    print("Heartbeat log sample (first 5):")
    for _, row in hb.head(5).iterrows():
        print("  "+row['screen_id']+" ts="+str(row['timestamp'])+" signal="+str(round(row['signal_strength'],1))+"dBm temp="+str(round(row['cpu_temp'],1))+"C free="+str(row['storage_free_mb'])+"MB status="+row['status'])
    print("Total: "+str(len(hb)))
    print("Status: "+str(dict(hb.groupby('status').size())))

示例

输入
solve()
期望输出
Heartbeat log sample (first 5):
  SCR-0001 ts=1748736017 signal=-66.5dBm temp=76.8C free=2984MB status=normal
  SCR-0001 ts=1748739627 signal=-68.3dBm temp=59.5C free=1457MB status=normal
  SCR-0001 ts=1748743196 signal=-61.8dBm temp=44.5C free=3686MB status=normal
  SCR-0001 ts=1748746777 signal=-94.6dBm temp=59.4C free=491MB status=normal
  SCR-0001 ts=1748750400 signal=-51.4dBm temp=45.9C free=1422MB status=normal
Total: 4532
Status: {'normal': np.int64(4196), 'timeout': np.int64(133), 'weak_signal': np.int64(203)}
Python 代码 🔒 登录后使用
🔒

登录后即可练习

注册免费账号,在浏览器中直接运行 Python 代码