You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将网页爬取的车辆主数据与额外数据存入数据库同一行?

解决车辆主数据与详情页数据同存一行的方案

方案1:先暂存完整数据,统一插入

  • 遍历列表页的每辆车,先抓取车辆名称、座位数、车门数、变速箱类型、车型、价格、图片等主数据,将每辆车的主数据存入一个字典(如car_info),并把这些字典放到一个列表(如all_cars)里暂存。
  • 对每辆车,点击进入详情页爬取保险、额外驾驶员相关数据,直接把这些字段追加到对应的car_info字典中。
  • 等所有车辆的完整数据都收集完毕后,再批量将all_cars中的每条数据插入cardata表,这样每辆车的主数据和详情数据就会存在同一行。

方案2:先插主数据拿主键,再更新详情

  • 处理列表页车辆时,抓取主数据后直接插入cardata表,插入后获取该条数据的主键(比如自增id),把主键和当前车辆的唯一标识(如车辆名称+价格的组合,或页面元素的data-id属性)绑定保存。
  • 进入详情页抓取额外数据后,根据之前保存的主键,执行UPDATE语句,把保险、额外驾驶员等字段更新到对应主键的行中。
  • 注意:必须确保车辆标识的唯一性,避免更新错误的行。

核心注意点

  • 页面跳转时要维护好上下文,比如用新标签页打开详情页,处理完后关闭并切回列表页;或者记录当前窗口句柄,切换回来继续处理下一辆。
  • 遍历车辆时要严格按顺序处理,保证主数据和详情数据的对应关系不混乱。
  • 若车辆数量少(比如你这里的3辆),方案1的内存暂存方式更简单高效;如果车辆数量极大,方案2更节省内存。

内容的提问来源于stack exchange,提问作者Singh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 18:24:29