Simple wrapper for the Mediawiki API
A very simple and direct wrapper around the Mediawiki API
The library allows you to call Mediawiki APIs without having to deal without dealing with network calls. It also has authentication support and a few convenience methods.
- class MWApi
- Class representing a single API Session, with a single authenticated user.Useful Attributes:tokens - Contains an edittoken & watchtoken (if populateTokens() has been called)is_authenticated - Boolean indicating if the MWApi is sending authenticated requestsMethods defined here:__init__(self, host, api_path=’/w/api.php’)Create a MWApi instanceArguments:api_path - Url to api.php on the host. Must start with /get(self, params)Makes an API request with the GET methodArguments:params - Parameters to send to the API. Varies depending on the action to be performed.login(self, username, password)Authenticates with the given credentials and logs in the user for the session.All further requests sent from this MWApi object will be signed as said user.Arguments:username - The username of the user to be authenticatedpassword - The password of the user to be authenticatedThrows:Throws an exception with (Message, Response) if Authentication failsNote:Passwords are sent as plaintext. This is a limitation of the Mediawiki API.Use a https host if you want your password to be securepopulateTokens(self)Populates the
tokensattribute of the object with
watchtoken.Requires that authentication has been performed already with
login()post(self, params)Makes an API request with the POST methodArguments:params - Parameters to send to the API. Varies depending on the action to be performed.request(self, method, params)Makes a request to the API and returns a dictionary containing the resultsArguments:method - GET or POST, depending on which API is being calledparams - Parameters to send to the API. Varies depending on the action to be performed.