我想写一个脚本来在页面移动后自动解决双重重定向。以下是我的开始:
(function () {
var api = new mw.Api();
api.get( {
action: 'query',
list: 'backlinks',
blpageid: mw.config.get('wgArticleId'),
blfilterredir: 'redirects',
blredirect: true,
bllimit: 500
} ).done( function (data) {
var fixed = 0;
redirects = data.query.backlinks;
for (var i=0; i<redirects.length; i++) {
var doubles = redirects[i].redirlinks;
if (doubles === undefined) {
continue;
}
for (var j=0; j<doubles.length; j++) {
console.log(doubles[j]);
fixed ++;
}
}
mw.notify(fixed);
} );
})();
问题是,如果我在Wikipedia:Blocking policy这样的页面上运行此函数,脚本会返回一些实际上不是双重定向的页面,而只是重定向包含指向它的链接。
我可以检查他们每个人看到他们实际指向的位置,但是没有更好的方法吗?即一种只检索双重重定向的简单方法。
答案 0 :(得分:0)
如果你对使用python和pywikibot框架感到满意,那么https://m.mediawiki.org/wiki/Manual:Pywikibot/redirect.py可以做你想做的事。
否则您可能希望使用Special:DoubleRedirects的输出。