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

如何通过维基词典API获取特定语言名词列表与斯拉夫语单词变格表?

问题

我需要获取以下两项内容:

  • 特定语言的名词列表
  • 斯拉夫语系中某一单词的变格表

原本计划通过这类HTTP GET请求实现:

  • 获取名词列表的请求示例:https://cs.wiktionary.org/wiki/wordlist/nouns
  • 获取变格表的请求示例:https://cs.wiktionary.org/wiki/program/declension

期望变格表返回如下JSON格式的响应:

{
  "word":"program",
  "singular_declension": {
    "nominative":"program",
    "genitive":"programu",
    "dative":"programu",
    "accusative":"program",
    "vocative":"programe",
    "locative":"programu",
    "instrumental":"programem"
  },
  "plural_declension": {
    "nominative":"programy",
    "genitive":"programů",
    "dative":"programům",
    "accusative":"programy",
    "vocative":"programy",
    "locative":"programech",
    "instrumental":"programy"
  }
}

但我在维基官方API文档中未找到对应的接口,请问该如何实现需求?是否只能通过网页抓取从HTML页面提取信息?


解决方案

一、获取斯拉夫语系单词变格表

维基词典的MediaWiki API没有直接返回结构化变格数据的接口,但可以通过以下两种更可靠的方式替代纯HTML抓取:

  1. 利用Wikibase实体数据
    部分维基词典条目会将词形变化数据存储在Wikibase实体中,调用wbgetentities接口并指定props=claims,可获取条目关联的语法属性数据,再自行解析为你需要的JSON格式。
  2. 解析页面的Wikitext源码
    通过action=parse接口获取条目的Wikitext源码(而非渲染后的HTML),维基词典的变格表通常由特定模板生成(比如捷克语的sklonování模板),解析这些模板的参数即可提取结构化的变格信息,这种方式比解析HTML更稳定、不易受页面样式变更影响。

二、获取特定语言的名词列表

维基词典的单词列表页面属于用户维护集合,没有专门API返回结构化列表,但可通过以下方式获取:

  1. 解析列表页面的Wikitext
    使用action=parse接口获取目标列表页面的Wikitext,里面的名词通常以模板或标准列表语法组织,解析成本远低于HTML。
  2. 利用分类系统批量获取
    维基词典会将同一语言的名词归类到对应分类下,通过action=query接口的list=categorymembers参数,可批量获取分类下的所有名词条目,这种方式得到的列表更系统、权威,比依赖用户维护的wordlist更可靠。

总结

不需要依赖纯HTML抓取,解析Wikitext或利用Wikibase数据的方式,能更稳定地获取结构化信息,且维护成本更低。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 02:55:34