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

使用Wikipedia API generator=allpages获取标题重复问题求助

问题根源与解决方案

你遇到的重复问题核心是混淆了两种不同continue参数的作用:

  • gapcontinue:是针对generator=allpages的分页标记,用来获取下一批新页面
  • clcontinue:是针对prop=categories的续传标记,仅用来获取当前这批页面未返回完的分类数据,不能用来推进到下一批页面

正确的分页流程

  1. 初始请求保持你原来的参数:
    GET https://it.wikipedia.org/w/api.php?action=query&generator=allpages&gapnamespace=0&gapfilterredir=nonredirects&gaplimit=500&prop=description|categories&converttitles=true&format=json&origin=*
    
  2. 处理响应的continue对象:
    • 如果响应里同时存在gapcontinue和clcontinue:反复使用clcontinue参数发起请求,直到响应的continue中不再包含clcontinue(说明当前这批页面的分类数据已全部获取)
    • 当continue中只剩gapcontinue时,使用该参数发起请求,即可获取下一批全新的页面数据
  3. 重复上述步骤,直到响应中没有continue对象,说明所有页面已遍历完成

简化方案(如果仅需页面标题)

如果你的目标只是下载所有页面标题,完全可以去掉prop=description|categories参数,此时响应中只会返回gapcontinue,分页逻辑会更简单:

GET https://it.wikipedia.org/w/api.php?action=query&generator=allpages&gapnamespace=0&gapfilterredir=nonredirects&gaplimit=500&converttitles=true&format=json&origin=*

每次分页直接使用返回的gapcontinue即可,不会出现参数混淆的问题

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 17:56:01