from __future__ import annotations from aiohttp import web from utils.server import register_server_module from lib.config import Config from service.mediawiki_api import MediaWikiApi async def init_mw_api(app: web.Application): mw_api = MediaWikiApi.create() bot_username = Config.get("mediawiki.bot_username", "", str) bot_password = Config.get("mediawiki.bot_password", "", str) if bot_username and bot_password: try: await mw_api.robot_login(bot_username, bot_password) except Exception as e: print("Cannot login to Robot account, please check config.") site_meta = await mw_api.get_site_meta() print( "Connected to Wiki %s, Robot username: %s" % (site_meta["sitename"], site_meta["user"]) ) def init(app: web.Application): app.on_startup.append(init_mw_api) register_server_module("mediawiki_api", init)