Michal Migurski wrote:
Hi everyone,
I'm new to the list and somewhat-new to Mediawiki.
I am trying set up some wrapper code that automates certain MediaWiki functions, such as page creation or renaming. For example, an external application would attempt to create a new article in MW. It might check to see whether the article exists, and create it if it does not. It might append some content to the article text. It might move the article, or set up a redirect. At the moment, I'm accomplishing this by issuing HTTP sub-requests to MediaWiki and interpreting the response.
MediaWiki does not seem to have a public-facing API, is that right?
Yes
Are there any F/OSS projects that provide such functionality without requiring screen-scraping?
No, although the best-maintained screen-scraping product is pywikipediabot, it has many of the functions you want.
Alternatively, is there any way to interface with the internals of the MW, *without* invoking an entire request, i.e. the stuff that requires the MEDIAWIKI constant?
No, not really. It'd only save you 20ms and you'd end up rewriting half the stuff that's inside the MEDIAWIKI sections.
Failing *that*, does documentation exist that explains MW's DB schema so I can begin to write my own?
Oh, so you want to rewrite it in some other language? Have fun, the documentation is in tables.sql.
I'm using the current-stable version, 1.4.9, if that matters.
You should probably upgrade to 1.5, 1.4.x will be obsolete soon.
-- Tim Starling