忽略Wikipedia使用mwlib重定向
问题描述:
我在Python中使用mwlib来遍历维基百科转储。我想忽略重定向,只看实际完整标题的页面内容。我已经运行MW-buildcdb,和我加载的是:忽略Wikipedia使用mwlib重定向
wiki_env = wiki.makewiki(wiki_conf_file)
当我遍历wiki_env.wiki.articles()
,琴弦似乎包含重定向冠军(我的一对夫妇的样本对维基百科检查这一点) 。我没有看到一个跳过这些的访问器,而wiki_env.wiki.redirects
是一个空字典,所以我无法检查哪些文章标题实际上只是重定向。
我已经试过翻翻mwlib代码,但如果我用
page = wiki_env.wiki.get_page(page_title)
wiki_env.wiki.nshandler.redirect_matcher(page.rawtext)
出现page.rawtext已经被重定向(包含完整的网页内容,并没有迹象表明有标题不匹配)。同样,由getParsedArticle()
返回的Article
节点似乎不包含要检查的“真”标题。
任何人都知道如何做到这一点?我是否需要以不存储重定向的方式运行mw-buildcdb?据我可以告诉该命令只需要一个输入转储文件和一个输出CDB,没有其他选项。
答
如有疑问,请自行修补。 :O)
MW-buildcdb现在需要一个 - 忽略重定向命令行选项:https://github.com/pediapress/mwlib/commit/f9198fa8288faf4893b25a6b1644e4997a8ff9b2