当前位置:首页>python>代码实战 | ECMWF官方出品,一个Python库通吃GRIB、NetCDF等气象数据格式

代码实战 | ECMWF官方出品,一个Python库通吃GRIB、NetCDF等气象数据格式

  • 2026-07-02 11:49:37
代码实战 | ECMWF官方出品,一个Python库通吃GRIB、NetCDF等气象数据格式

代码实战 | ECMWF官方出品,一个Python库通吃GRIB、NetCDF等气象数据格式

我们之前介绍过含有多种插值方法的earthkit-grid,今天我们说一下它的bro,用于获取与读数据的erathkit-data。

earthkit-data 是由 ECMWF(欧洲中期天气预报中心)主导开发的开源 Python 库,专注于气象与气候科学领域的数据访问与处理。

它最大的特点是 format-agnostic(格式无关):同一套 API 可以同时处理 GRIB、NetCDF、BUFR 等多种格式,而无需关心底层细节。

核心设计理念包括:

  • 统一入口:所有数据源都通过 from_source() 方法加载
  • 惰性加载(Lazy Loading):默认只将当前需要的字段保留在内存中,轻松处理超大文件
  • 流式支持:URL 和 FDB 等来源可直接流式读取,无需先落盘
  • 缓存机制:远程数据可自动缓存到本地,支持高度自定义
  • 插件扩展:用户可以自定义数据源并作为插件发布
  • GPU Ready:底层设计已考虑 GPU 计算,未来计划支持 PyTorch 张量

这是官网的教程列表,可见已支持了大多数气象数据的格式

以下内容仅测试读取gfs的grib数据,其余数据请自行测试

!pip install earthkit-data -i https://pypi.mirrors.ustc.edu.cn/simple/
Looking in indexes: https://pypi.mirrors.ustc.edu.cn/simple/
Requirement already satisfied: earthkit-data in /opt/conda/lib/python3.11/site-packages (0.20.0)
Requirement already satisfied: cfgrib>=0.9.10.1 in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (0.9.14.1)
Requirement already satisfied: dask in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (2024.8.1)
Requirement already satisfied: deprecation in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (2.1.0)
Requirement already satisfied: earthkit-utils<0.99,>=0.2 in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (0.3.0)
Requirement already satisfied: eccodes>=1.7 in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (2.47.0)
Requirement already satisfied: entrypoints in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (0.4)
Requirement already satisfied: filelock in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (3.29.1)
Requirement already satisfied: jinja2 in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (3.1.4)
Requirement already satisfied: jsonschema in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (4.23.0)
Requirement already satisfied: lru-dict in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (1.4.1)
Requirement already satisfied: markdown in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (3.6)
Requirement already satisfied: multiurl>=0.3.3 in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (0.3.7)
Requirement already satisfied: netcdf4 in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (1.6.3)
Requirement already satisfied: pandas in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (2.2.3)
Requirement already satisfied: pdbufr>=0.11 in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (0.14.2)
Requirement already satisfied: pyyaml in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (6.0.2)
Requirement already satisfied: tqdm>=4.63 in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (4.67.0)
Requirement already satisfied: xarray>=0.19 in /opt/conda/lib/python3.11/site-packages (from earthkit-data) (2024.3.0)
Requirement already satisfied: attrs>=19.2 in /opt/conda/lib/python3.11/site-packages (from cfgrib>=0.9.10.1->earthkit-data) (24.3.0)
Requirement already satisfied: click in /opt/conda/lib/python3.11/site-packages (from cfgrib>=0.9.10.1->earthkit-data) (8.1.7)
Requirement already satisfied: numpy in /opt/conda/lib/python3.11/site-packages (from cfgrib>=0.9.10.1->earthkit-data) (1.26.4)
Requirement already satisfied: array-api-compat in /opt/conda/lib/python3.11/site-packages (from earthkit-utils<0.99,>=0.2->earthkit-data) (1.14.0)
Requirement already satisfied: pint in /opt/conda/lib/python3.11/site-packages (from earthkit-utils<0.99,>=0.2->earthkit-data) (0.24.4)
Requirement already satisfied: cffi in /opt/conda/lib/python3.11/site-packages (from eccodes>=1.7->earthkit-data) (1.17.1)
Requirement already satisfied: findlibs in /opt/conda/lib/python3.11/site-packages (from eccodes>=1.7->earthkit-data) (0.0.5)
Requirement already satisfied: eccodeslib in /opt/conda/lib/python3.11/site-packages (from eccodes>=1.7->earthkit-data) (2.47.1.20)
Requirement already satisfied: requests in /opt/conda/lib/python3.11/site-packages (from multiurl>=0.3.3->earthkit-data) (2.32.3)
Requirement already satisfied: pytz in /opt/conda/lib/python3.11/site-packages (from multiurl>=0.3.3->earthkit-data) (2024.1)
Requirement already satisfied: python-dateutil in /opt/conda/lib/python3.11/site-packages (from multiurl>=0.3.3->earthkit-data) (2.9.0.post0)
Requirement already satisfied: packaging>=22 in /opt/conda/lib/python3.11/site-packages (from xarray>=0.19->earthkit-data) (24.1)
Requirement already satisfied: tzdata>=2022.7 in /opt/conda/lib/python3.11/site-packages (from pandas->earthkit-data) (2024.2)
Requirement already satisfied: cloudpickle>=3.0.0 in /opt/conda/lib/python3.11/site-packages (from dask->earthkit-data) (3.1.0)
Requirement already satisfied: fsspec>=2021.09.0 in /opt/conda/lib/python3.11/site-packages (from dask->earthkit-data) (2025.2.0)
Requirement already satisfied: partd>=1.4.0 in /opt/conda/lib/python3.11/site-packages (from dask->earthkit-data) (1.4.2)
Requirement already satisfied: toolz>=0.10.0 in /opt/conda/lib/python3.11/site-packages (from dask->earthkit-data) (1.0.0)
Requirement already satisfied: importlib-metadata>=4.13.0 in /opt/conda/lib/python3.11/site-packages (from dask->earthkit-data) (8.5.0)
Requirement already satisfied: MarkupSafe>=2.0 in /opt/conda/lib/python3.11/site-packages (from jinja2->earthkit-data) (3.0.2)
Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /opt/conda/lib/python3.11/site-packages (from jsonschema->earthkit-data) (2024.10.1)
Requirement already satisfied: referencing>=0.28.4 in /opt/conda/lib/python3.11/site-packages (from jsonschema->earthkit-data) (0.35.1)
Requirement already satisfied: rpds-py>=0.7.1 in /opt/conda/lib/python3.11/site-packages (from jsonschema->earthkit-data) (0.22.3)
Requirement already satisfied: cftime in /opt/conda/lib/python3.11/site-packages (from netcdf4->earthkit-data) (1.6.4)
Requirement already satisfied: zipp>=3.20 in /opt/conda/lib/python3.11/site-packages (from importlib-metadata>=4.13.0->dask->earthkit-data) (3.21.0)
Requirement already satisfied: locket in /opt/conda/lib/python3.11/site-packages (from partd>=1.4.0->dask->earthkit-data) (1.0.0)
Requirement already satisfied: six>=1.5 in /opt/conda/lib/python3.11/site-packages (from python-dateutil->multiurl>=0.3.3->earthkit-data) (1.17.0)
Requirement already satisfied: pycparser in /opt/conda/lib/python3.11/site-packages (from cffi->eccodes>=1.7->earthkit-data) (2.22)
Requirement already satisfied: eckitlib==2.0.7.20 in /opt/conda/lib/python3.11/site-packages (from eccodeslib->eccodes>=1.7->earthkit-data) (2.0.7.20)
Requirement already satisfied: platformdirs>=2.1.0 in /opt/conda/lib/python3.11/site-packages (from pint->earthkit-utils<0.99,>=0.2->earthkit-data) (4.3.6)
Requirement already satisfied: typing_extensions>=4.0.0 in /opt/conda/lib/python3.11/site-packages (from pint->earthkit-utils<0.99,>=0.2->earthkit-data) (4.12.2)
Requirement already satisfied: flexcache>=0.3 in /opt/conda/lib/python3.11/site-packages (from pint->earthkit-utils<0.99,>=0.2->earthkit-data) (0.3)
Requirement already satisfied: flexparser>=0.4 in /opt/conda/lib/python3.11/site-packages (from pint->earthkit-utils<0.99,>=0.2->earthkit-data) (0.4)
Requirement already satisfied: charset-normalizer<4,>=2 in /opt/conda/lib/python3.11/site-packages (from requests->multiurl>=0.3.3->earthkit-data) (3.4.0)
Requirement already satisfied: idna<4,>=2.5 in /opt/conda/lib/python3.11/site-packages (from requests->multiurl>=0.3.3->earthkit-data) (3.10)
Requirement already satisfied: urllib3<3,>=1.21.1 in /opt/conda/lib/python3.11/site-packages (from requests->multiurl>=0.3.3->earthkit-data) (2.2.3)
Requirement already satisfied: certifi>=2017.4.17 in /opt/conda/lib/python3.11/site-packages (from requests->multiurl>=0.3.3->earthkit-data) (2024.12.14)

1. 安装

环境要求 Python ≥ 3.10

基础安装仅包含核心功能,建议根据需求选择以下方式:

# 基础安装
# !pip install earthkit-data

# 安装全部可选依赖(推荐,支持 GRIB/NetCDF/BUFR/FDB 等所有格式)
# !pip install earthkit-data[all]

# 或按需安装特定格式支持
# !pip install earthkit-data[grib]      # GRIB 格式
# !pip install earthkit-data[netcdf]    # NetCDF 格式
# !pip install earthkit-data[bufr]      # BUFR 格式
# !pip install earthkit-data[fdb]       # FDB (Fields DataBase) 支持
# !pip install earthkit-data[polytope]  # Polytope API 支持

2. 核心入口:from_source

earthkit.data.from_source(<type>, <args>) 是整个库最核心的入口方法。通过统一的方式从各种来源加载数据。

支持的常见 type 包括:

类型
说明
示例场景
sample
内置示例数据
快速体验、测试
file
本地文件
读取本地 GRIB/NetCDF
url
远程 URL
下载在线数据,支持 tar.gz 自动解压
stream
数据流
处理标准输入或网络流
fdb
ECMWF FDB
从 Fields DataBase 读取
mars
MARS 服务
通过 ECMWF MARS 远程访问
cds
CDS API
从 Copernicus Climate Data Store 获取
polytope
Polytope
通过 Polytope 服务访问数据
dummy-source
虚拟数据源
生成测试用的假数据
import earthkit.data as ekd

ds = ekd.from_source("file""/home/mw/input/GFS1824/gfs_4_20230902_0000_021.grb2")
print("类型:", type(ds))
print("字段数:", len(ds))
类型: <class 'earthkit.data.readers.grib.file.GRIBReader'>
字段数: 743
/opt/conda/lib/python3.11/site-packages/gribapi/__init__.py:23: UserWarning: ecCodes 2.42.0 or higher is recommended. You are running version 2.29.0
  warnings.warn(
# 从 URL 加载(支持 tar.gz 自动解压)
url = "https://get.ecmwf.int/repository/test-data/earthkit-data/examples/test_gribs.tar.gz"
ds_url = ekd.from_source("url", url)
print("从 URL 加载后的类型:", type(ds_url))
print("字段数:", len(ds_url))
test_gribs.tar.gz:   0%|          | 0.00/463k [00:00<?, ?B/s]
  0%|          | 0/2 [00:00<?, ?it/s]
从 URL 加载后的类型: <class 'earthkit.data.readers.grib.index.GribMultiFieldList'>
字段数: 6

3. 元数据查看

GRIB 和适当的 NetCDF 文件在 earthkit-data 中被表示为 FieldList(字段列表),每个元素是一个 Field(水平切片,代表某一时刻、某一层的某个气象变量)。

以下方法可以快速了解数据的整体概况:

# 表格化快速摘要
ds.ls()
image
# 按 param 分组的详细描述
ds.describe()
image

4. 数据筛选与切片

FieldList 提供了类似 xarray 的 sel() 方法,可以按元数据(如参数名、层级、时效步长等)进行筛选。

# 按参数名筛选(param 是 GRIB 中常用的关键字)
t2m = ds.sel(param="2t")
print("筛选后字段数:", len(t2m))
t2m.ls()
筛选后字段数: 1
image
# 多条件筛选
subset = ds.sel(param="cin", levelist=9000)
print("多条件筛选后字段数:", len(subset))
subset.ls()
image
多条件筛选后字段数: 1
# 按元数据键排序
ordered = ds.order_by("param""levelist")
print("排序后前5条:")
ordered.ls()
排序后前5条:
image
# 切片:取前3条
first3 = ds[:3]
print("切片后字段数:", len(first3))
first3.ls()
切片后字段数: 3
image

5. 单条 Field 的访问与操作

可以通过索引访问单个字段,查看其详细元数据或导出数据。

# 取第一条
f = ds[0]
print("类型:", type(f))
print("参数名:", f.metadata("param"))
print("层级:", f.metadata("levelist"))
print("时效步长:", f.metadata("step"))
类型: <class 'earthkit.data.readers.grib.codes.GribField'>
参数名: prmsl
层级: 0
时效步长: 21
# 完整 dump 所有元数据(namespace 常用 mars 或 default)
f.dump(namespace="mars")

6. 数据转换

earthkit-data 提供了多种常用导出接口,让你可以无缝衔接到 xarraypandasnumpy 等生态工具中。

# 转为 xarray Dataset(气象分析最常用)
xa = subset.to_xarray()
print(xa)
<xarray.Dataset> Size: 2MB
Dimensions:    (latitude: 361, longitude: 720)
Coordinates:
  * latitude   (latitude) float64 3kB 90.0 89.5 89.0 88.5 ... -89.0 -89.5 -90.0
  * longitude  (longitude) float64 6kB 0.0 0.5 1.0 1.5 ... 358.5 359.0 359.5
Data variables:
    cin        (latitude, longitude) float64 2MB ...
Attributes:
    param:        cin
    paramId:      228001
    levtype:      unknown
    date:         20230902
    time:         0
    levelist:     9000
    Conventions:  CF-1.8
    institution:  ECMWF
xa['cin'].plot()
<matplotlib.collections.QuadMesh at 0x7f2bd921c290>
output

多变量数据转换还是有点问题,等待进一步升级吧

7. earthkit 生态系统简介

earthkit-data 只是 earthkit 大家族的一员。完整的 earthkit 生态还包括:

子包
功能
earthkit-data
数据访问与格式处理(本 notebook 主题)
earthkit-maps
地图投影与地理信息处理
earthkit-plots
气象数据可视化
earthkit-regrid
网格插值与重采样
earthkit-transforms
数据变换与统计计算
earthkit-climate
气候学分析与计算

这些包共同构成了一套 从数据获取 → 处理 → 分析 → 可视化 的完整气象科学工作流工具链。

8. 小结与注意事项

总的来说这个工具比较工业化,适合做项目一条龙或者海量数据处理。

核心要点

  • from_source() 是唯一的加载入口,屏蔽了底层格式差异
  • FieldList / Field 是核心抽象,提供统一的元数据访问和数据导出接口
  • sel() / order_by() / slice 让数据筛选变得非常直观
  • to_xarray() / to_numpy() / to_pandas() 让你可以无缝接入现有的科学计算生态
  • 默认惰性加载 + 流式读取意味着你可以处理远超内存容量的数据集

⚠️ 版本说明

截至当前,earthkit-data 仍处于 Release Candidate 阶段,尚未发布稳定的 1.0 版本。API 可能在最终版前发生变动,生产环境使用时建议关注官方 Migration Guide。

参考链接

  • GitHub: https://github.com/ecmwf/earthkit-data
  • 文档: https://earthkit-data.readthedocs.io/en/latest/
  • earthkit 总览: https://earthkit.readthedocs.io/en/latest/
  • ECMWF 官方介绍: https://www.ecmwf.int/en/newsletter/179/computing/introducing-earthkit

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-03 04:00:25 HTTP/2.0 GET : https://f.mffb.com.cn/a/497811.html
  2. 运行时间 : 0.122454s [ 吞吐率:8.17req/s ] 内存消耗:4,522.63kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=02cccaaf8b93aa0df77c7d86012a358f
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000606s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000955s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000318s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000269s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000635s ]
  6. SELECT * FROM `set` [ RunTime:0.000240s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000756s ]
  8. SELECT * FROM `article` WHERE `id` = 497811 LIMIT 1 [ RunTime:0.004132s ]
  9. UPDATE `article` SET `lasttime` = 1783022425 WHERE `id` = 497811 [ RunTime:0.008783s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000379s ]
  11. SELECT * FROM `article` WHERE `id` < 497811 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000693s ]
  12. SELECT * FROM `article` WHERE `id` > 497811 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000521s ]
  13. SELECT * FROM `article` WHERE `id` < 497811 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000982s ]
  14. SELECT * FROM `article` WHERE `id` < 497811 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.010931s ]
  15. SELECT * FROM `article` WHERE `id` < 497811 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.016665s ]
0.124020s