To follow up on this somewhat old thread: I finally got around to actually testing Paolo's suggestion of using the index.php API instead of api.php. Turns out it doesn't actually work. While the index.php API does have a variant parameter that allows to select one of the Chinese language variants (e.g. zh, zh-hk, zh-tw) it does not actually honor this parameter when combined with action=raw. When returning the raw Wiki markup it always returns the same variant (zh?) no matter what variant is specified.
$ curl -s "http://zh.wikipedia.org/w/index.php?title=%E8%A5%BF%E6%81%A9%E5%A1%94&ac..."
zh-cn
$ curl -s "http://zh.wikipedia.org/w/index.php?title=%E8%A5%BF%E6%81%A9%E5%A1%94&ac..."
zh-tw
$ diff zh-cn zh-tw
diff shows that the markup returned is identical. With action=view (the default) the output is clearly different.
So it looks like there is actually no way to get the raw markup in different language variants?
Thanks, Jan
On 12/13/2007 6:45 PM, Jan Hecking wrote:
On 12/13/2007 11:28 PM, Paolo Liberatore wrote:
On Thu, 13 Dec 2007, Jan Hecking wrote:
On 12/13/2007 1:04 AM, Roan Kattouw wrote:
Jan Hecking schreef:
Hi,
Is it possible to retrieve content in different Chinese language variants using the /w/api.php API? There doesn't seem to be a variant or language parameter that would allow selecting a variant like "zh-tw" or "zh-hk". Is there some other way to do this?
How is this done in the regular user interface, then?
I would like to know that as well. :)
My suspicion is that the user interface, i.e. the frontend servers, do the conversion. Which would mean that all users of the MediaWiki API would have to replicate that work. That would severely limit the use of the API for Chinese language content IMHO. But then I don't know much about MediaWiki yet and maybe I have just missed something obvious.
Thanks, Jan
There is a "variant" parameter in http://www.mediawiki.org/wiki/Manual:Parameters_to_index.php I believe it's only used for Chinese.
Thanks for the reminder, Paolo! I hadn't considered index.php before because I assumed it only returns the rendered HTML markup. But now I saw that there is an action=raw parameter which returns the raw wiki markup that I'm looking for. However this API has one other drawback: In contrast to api.php it doesn't have an option to resolve redirects automatically. When calling api.php I was using the redirects parameter to do so but this doesn't seem to be supported by index.php when using action=raw (only for action=view). That means I would potentially have to make multiple calls to resolve redirects manually. Or is there a way to avoid this?
Thanks, Jan