You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pywikibot登录本地Wampserver的MediaWiki失败,求配置排查

问题分析与解决步骤

你的核心问题是Pywikibot配置没有指向本地Wamp部署的MediaWiki服务器,同时存在用户名大小写不匹配的问题,导致程序连接到默认的公共MediaWiki站点,找不到你本地创建的用户。

一、错误根源

你当前的user-config.py使用了默认的mediawiki家族,这个家族默认指向维基百科等公共MediaWiki站点,而非你的本地服务器,自然找不到你在本地创建的Melchior用户;另外配置里的用户名是小写melchior,但错误提示里是大写开头的Melchior,大小写不匹配也会触发“用户不存在”的错误。

二、具体修改步骤

1. 创建本地站点的家族配置文件

Pywikibot需要通过家族文件识别本地站点的地址,你需要在Pywikibot安装目录的families文件夹中,新建一个名为local_family.py的文件,内容如下:

from pywikibot import family

class Family(family.Family):
    name = 'local'
    # 这里的'zh'是你本地MediaWiki安装时选择的语言代码,英文环境填'en'
    langs = {
        'zh': 'localhost',
    }

    # 如果你的MediaWiki安装在子目录(比如localhost/wiki),把这里改成'/wiki/w'
    def scriptpath(self, code):
        return '/w'

    # 本地服务器用http协议
    def protocol(self, code):
        return 'http'

2. 修改user-config.py配置

将你的user-config.py替换为以下内容(注意匹配你本地的语言代码和用户名):

# 对应上面创建的家族名称
family = 'local'
# 对应家族文件里的语言代码,英文环境填'en'
mylang = 'zh'
# 用户名要和本地MediaWiki后台创建的完全一致,注意大小写!
usernames['local']['zh'] = 'Melchior'
password_file = None

3. 验证前提条件

  • 确保Wamp服务器处于运行状态,能正常访问你的本地MediaWiki(比如http://localhost/w/index.php)
  • 确保本地MediaWiki后台已经创建了大小写完全匹配的用户Melchior
  • 验证API地址可访问:打开浏览器访问http://localhost/w/api.php(或对应子目录的API地址),能看到MediaWiki的API页面即为正常

4. 重新执行登录命令

再次运行:

python pwb.py login.py

按照提示输入密码即可完成登录。

内容的提问来源于stack exchange,提问作者Melchior

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 05:53:15