import os import mwclient import sys from tqdm import tqdm from config import * # Template strings HIDDEN_COMMENT = "" CATEGORY_TEMPLATE = "\n".join( "[[Category:{0}]]".format(cat) for cat in WIKI_CATEGORY_LIST ) # Connect to MediaWiki site = mwclient.Site(WIKI_HOST, path=WIKI_PATH) site.login(WIKI_USERNAME, WIKI_PASSWORD) # Process and upload each .mediawiki file for filename in tqdm(os.listdir(OUTDIR_MEDIAWIKI)): if filename.endswith(".mediawiki"): filepath = os.path.join(OUTDIR_MEDIAWIKI, filename) article_name = WIKI_ARTICLE_PREFIX + filename.replace(".mediawiki", "") with open(filepath, "r", encoding="utf-8") as f: content = f.read() # Compose final content final_content = f"{HIDDEN_COMMENT}\n\n{content}\n\n{CATEGORY_TEMPLATE}" # Post to MediaWiki page = site.pages[article_name] page.save(final_content, summary="Automated upload of recipe page")