vehicle-makes-models
收藏资源简介:
一个免费、开放的汽车品牌、型号、世代和发动机规格数据集,覆盖全球范围,特别包含埃及市场车型(如Speranza、El Nasr),提供JSON、CSV和SQLite格式。数据集包含164个品牌、2,621个型号、7,169个世代和30,390个发动机变体,每周自动更新并发布版本化数据。
A free and open global dataset containing automobile brand, model, generation and engine specification information, with dedicated coverage of vehicle models available in the Egyptian market such as Speranza and El Nasr. The dataset is provided in JSON, CSV and SQLite formats, and includes 164 brands, 2,621 models, 7,169 generations and 30,390 engine variants. It is automatically updated on a weekly basis, with versioned data releases published regularly.
数据集概述:vehicle-makes-models
这是一个免费开源的数据集,涵盖全球汽车品牌、车型、代系和引擎规格,尤其包含了多数数据集遗漏的埃及市场品牌(如 Speranza、El Nasr)。数据以 JSON、CSV 和 SQLite 三种格式提供。
数据集规模
- 164 个品牌
- 2,621 个车型
- 7,169 个代系
- 30,390 个引擎变体
数据每周更新一次,以版本化发布的形式提供下载。
数据结构
数据集目录结构如下:
data/ json/ <make>.json # 每个品牌组一个JSON文件(如 toyota.json),采用三层嵌套结构 all.json # 所有品牌合并为单个数组 csv/ engines.csv # 引擎扁平表,每行一个引擎变体,包含23列 makes-models.csv # 车型便捷表,每行一个车型(品牌/车型/起始/结束年份) vehicles.sqlite # 规范化的 SQLite 数据库文件
JSON 数据结构(三层嵌套)
每个品牌的 JSON 文件按以下层级组织: 品牌组 → 品牌 → 车型 → 代系 → 引擎
每个引擎包含核心字段(如燃油类型、功率、扭矩、尺寸等)和一个 specs 映射,用于保留所有原始键值对。
示例层级:
group: "toyota" makes: [{ name: "Toyota" models: [{ name: "Corolla" yearStart: 1966, yearEnd: null generations: [{ name: "Corolla Sedan (2022)" yearStart: 2022, yearEnd: null, bodyType: null engines: [{ label: "1.8L CVT FWD (140 HP)" fuelType: "Hybrid Gasoline" cylinders: 4, powerHp: 140 drivetrain: "Front Wheel Drive", topSpeedKmh: 180 specs: { ... } }] }] }] }]
CSV 表格
-
engines.csv:每行一个引擎变体,共23列,包括品牌组、品牌、车型、代系、引擎标签、燃油类型、气缸数、排量、功率、扭矩、变速箱、驱动方式、0-100加速、极速、油耗、尺寸等。空值保留为空字段。原始 specs 映射不在该 CSV 中。
-
makes-models.csv:每行一个车型,共5列(品牌组、品牌、车型、起始年份、结束年份),方便快速查询。
SQLite 数据库
数据库采用规范化表结构,包含外键关系和 EAV 表用于原始规格:
- makes (id, group, name, country)
- models (id, make_id, name, year_start, year_end)
- generations (id, model_id, name, year_start, year_end, body_type)
- engines (id, generation_id, label, fuel_type, cylinders, displacement_cc, power_hp, torque_nm, transmission, drivetrain, zero_to_100_s, top_speed_kmh, fuel_economy_combined_l100, length_mm, width_mm, height_mm, wheelbase_mm, curb_weight_kg)
- engine_specs (id, engine_id, key, value) — EAV 表,每行一个原始规格键值对
数据库包含针对 models.make_id、generations.model_id、engines.generation_id 和 engine_specs.engine_id 的索引。
使用方式
- JSON:可通过导入
data/json/all.json或单个品牌文件使用。 - CSV:可直接在 Excel/Sheets 中打开,或使用 Python
csv模块读取。 - SQLite:任何 SQLite 客户端均可使用,支持复杂查询,例如查询指定品牌的引擎变体或引擎原始规格。
数据构建
以 data/json/ 下的 JSON 文件为数据源,通过以下命令生成 CSV 和 SQLite 输出:
bash
pnpm install
pnpm build
pnpm test
构建过程会验证引擎粒度的数据一致性(JSON、CSV、SQLite 中的引擎数必须一致)。
许可证与数据来源
- 代码(
data/目录外):MIT 许可证 - 数据(
data/目录内):ODbL 1.0 许可证
品牌、车型、代系和引擎数据来源于 autoevolution.com 的公开信息,埃及市场数据(Speranza、El Nasr)为原创整理。使用数据需遵守 ODbL 1.0 的署名和相同方式共享要求。
贡献方式
欢迎提交修正。编辑 data/json/ 下的相关文件后运行 pnpm build,并在 Pull Request 中包含重新生成的 CSV/SQLite 文件。





