问题标签 [wikipedia-api]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1000 浏览

ruby-on-rails - 从 wiki 转换为 html

我正在使用维基百科 api 从维基百科获取信息。有什么可以在 html 中转换 wiki 文本吗?

我尝试过 mediacloth,但效果不佳

0 投票
1 回答
2320 浏览

javascript - Link terms on page to Wikipedia articles in pure JavaScript

While browsing I came across this blog post about using the Wikipedia API from JavaScript, to link a single search term to it's definition. At the end of the blog post the author mentions possible extensions including:

A plugin which auto links terms to Wikipedia articles.

This fits the bill perfectly for a project requirement I'm working on, but sadly I lack the programming skills to extend the original source code. What I'd like is to have a pure JavaScript snippet I can add to a webpage, that links all the terms on that webpage that have an article on an internal wiki to that wiki.

I know this might be asking for much, but the code looks like it's nearly there, and I'd be willing to add a bounty if anyone will do the remaining work for that virtual credit.. ;) I also suspect this might be of value to a few others, as I've seen similar requests but no working implementation (that's a mere JavaScript (and therefore portable) library/snippet include).

Here's a sample of the original source code, I hope anyone is able to add to this or point me to what I'd need to add if I were to implement this myself (in which case I'll share the code if I manage to put something together).


Update
As pointed out in the comments, both the time it would take to link all words and how to handle multiple word spanning article names were concerns of mine as well..

I'd think starting with single word articles would already cover a large percentage of the use cases, with maybe some performance benefits gained when skipping the 500 most common words in the English language, but still I'm uncertain how feasible this approach will be..

On the upside however this would all be client side, and some delay in linking terms is fully acceptable.

Alternatively searching for terms the mouse is hovering over / selected might be acceptable as well, but I'm unsure if this would decrease or increase complexity..


Update 2

'Pointy' explained below that this functionality could be achieved by altering some fairly standard highlighting scripts, after having obtained a list of article topics from api.php?action=query&list=allpages.
To reinterate: we're using an internal wiki, so the list of articles is likely limited, non ambiguous and domain specific enough to overcome some of the expected problems in matching words.

Since we've had some good suggestions so far, and a few workable ideas, I'm starting a bounty to see if I can get a few answers on this..

0 投票
4 回答
3931 浏览

api - 从维基百科文章中获取摘录?

我一直在Wikipedia API上下浮动,但我不知道是否有一种很好的方法来获取文章的摘录(通常是第一段)。获得该段落的 HTML 格式也会很好。

我目前看到的获得类似于片段的东西的唯一方法是执行全文搜索(example),但这并不是我真正想要的(太短了)。

除了野蛮地解析 HTML/WikiText 之外,还有其他方法可以获取 Wikipedia 文章的第一段吗?

0 投票
1 回答
4965 浏览

php - 使用 PHP cURL 从 Wikipedia API 中提取段落

这是我尝试使用 Wikipedia (MediaWiki) API 执行的操作 - http://en.wikipedia.org/w/api.php

  1. 在http://en.wikipedia.org/w/api.php?format=xml&action=opensearch&search=[keyword]上执行 GET以检索关键字的建议页面列表

  2. 在http://en.wikipedia.org/w/api.php?format=json&action=query&export&titles=[page title]上使用 GET 遍历每个建议的页面

  3. 将页面上找到的任何段落提取到数组中

  4. 对数组做一些事情

我被困在#3上。我可以看到一堆在段落之间包含“\n\n”的 JSON 数据,但由于某种原因,PHP explode() 函数不起作用。

本质上,我只想获取每个维基百科页面的“内容”(不是标题或任何格式,只是内容)并将其按段落分解成一个数组。

有任何想法吗?谢谢!

0 投票
2 回答
573 浏览

.net - 维基百科嵌入 WinForms 应用教程

任何人都可以在此处发布有关如何在 .NET WinForms 应用程序(C# 或 VB)中显示 Wikipedia 文章的教程吗?如果文章可以放在一个字符串中就足够了,则无需将其放在任何控件上。

我在Wikipedia 的 API上找到了一些信息。阅读后,我添加了对 Web 服务的引用,但找不到使其工作的方法。

如果可能,请解释如何从 wiki 下载图像(链接或图像本身)。

0 投票
1 回答
723 浏览

api - list=alllinks 混淆

我正在为夏天做一个研究项目,我必须使用从维基百科获取一些数据,存储它,然后对其进行一些分析。我正在使用 Wikipedia API 来收集数据,而且我已经很好地完成了。

我的问题是关于此处links-alllinksAPI文档中的选项的问题 在阅读了那里和API本身中的描述后(它有点低,我无法直接链接到该部分),我想我明白它应该是什么返回。但是,当我运行查询时,它给了我一些我没想到的东西。

这是我运行的查询:

其实质是:获取谷歌页面的最新修订,包括每个修订的id、时间戳、用户、评论和内容,并以XML格式返回。链接(我认为)应该给我一个指向谷歌页面的维基百科页面列表(在这种情况下是前 40 个唯一的页面)。

我不确定发誓的政策是什么,但这是我得到的结果:

<alllinks>部分,它只是一堆随机的狼吞虎咽和冒犯性的评论。几乎没有我想我会得到的。我进行了相当多的搜索,但我似乎无法找到我的问题的直接答案。

  1. list=alllinks期权应该返回什么?
  2. 为什么我会把这些垃圾放进去?
0 投票
9 回答
22988 浏览

python - 解析维基百科转储

例如使用这个维基百科转储:

http://en.wikipedia.org/w/api.php?action=query&prop=revisions&titles=lebron%20james&rvprop=content&redirects=true&format=xmlfm

是否有现有的 Python 库可用于创建具有主题和值映射的数组?

例如:

0 投票
1 回答
949 浏览

wiki - MediaWiki api - 获取最后的更改

我如何获取自使用 mediawiki api 某个日期以来已更改的所有页面的列表?

编辑:我已经找到了这个查询:) 维基百科的 Fe http://en.wikipedia.org/w/api.php?action=query&list=recentchanges&rclimit=500&rcnamespace=0

0 投票
4 回答
15411 浏览

jquery - 使用 jQuery 的 MediaWiki API 没有响应

我试图从 Wikipedia 获取一些 JSON 格式的内容:

但我没有得到任何回应。如果我粘贴到浏览器的地址栏,比如

我得到了预期的内容。怎么了?

0 投票
1 回答
352 浏览

java - Java/Javascript 中的 MediaWiki 渲染器支持数学符号和公式

对于支持数学符号和公式的 MediaWiki 语法,我需要 Javascript 或 Java 中的渲染器/解析器。