我正在尝试使用Wiki API构建查询,该查询将返回来自id格式的特定文章的所有内部链接。 我有一些文章的pageId。例如,文章“Android(操作系统)”id是12610483。 在我的客户端,我只需要使用id,然后只能通过id获取所有信息。 我的目标是从文章ID中找到所有内部链接(文章的ID)。
不幸的是,我找到的唯一可行方法是获取由文章标题表示的链接: http://en.wikipedia.org/w/api.php?action=parse&format=json&pageid=12610483&prop=links
是否还有其他方法可以获取链接ID而不仅仅是标题?
答案 0 :(得分:4)
您要做的是使用action=query&prop=links
从pagelinks
数据库表中获取数据,而不是解析页面文本。
这仍然只会为您提供页面标题(因为链接可能会导致页面不存在,这意味着没有页面ID)。
但是你可以使用prop=links
作为生成器来解决这个问题:
如果文章有很多链接(如你建议的那样),则需要使用分页(参见gplcontinue
元素)。
答案 1 :(得分:-3)
我认为您需要使用PHP Simple HTML DOM Parser
你不能在这里找到它 http://simplehtmldom.sourceforge.net/