אונטערשייד צווישן ווערסיעס פון "באַניצער:בוט צמא לדעת/descriptions.js"
קפיצה לניווט
קפיצה לחיפוש
אין תקציר עריכה |
אין תקציר עריכה |
||
שורה 7: | שורה 7: | ||
"list": "allpages", | "list": "allpages", | ||
"utf8": 1, | "utf8": 1, | ||
"apnamespace": " | "apnamespace": "0", | ||
"apfilterredir": "nonredirects", | "apfilterredir": "nonredirects", | ||
"apfrom": 'רבי שלמה האלבערשטאם', | //"apfrom": 'רבי שלמה האלבערשטאם', | ||
"aplimit": " | "aplimit": "300" | ||
}).done((data) => { | }).done((data) => { | ||
//console.table(data); | //console.table(data); | ||
שורה 16: | שורה 16: | ||
console.timeLog('מדידת זמן', 'a'); | console.timeLog('מדידת זמן', 'a'); | ||
console.table(list); | console.table(list); | ||
var sum = 0; | //var sum = 0; | ||
for (const p in list) { | for (const p in list) { | ||
const pageName = list[p].title; | const pageName = list[p].title; | ||
wikidataDesc(pageName); | wikidataDesc(pageName); | ||
sum++; | //sum++; | ||
if (sum >= 199) { | //if (sum >= 199) { | ||
// console.log('last was: ', pageName); | |||
} | //} | ||
} | } | ||
}) | }) | ||
שורה 29: | שורה 29: | ||
function wikidataDesc(page) { | function wikidataDesc(page) { | ||
const pageName = page.replace(/^רבי /, "")//.replace('איד', 'ייד')//.replace(/^הרב /, "").replace(/\"הייליגע\"/g, "הייליגע").replace('דעיוויד', 'דייוויד'); | const pageName = page//.replace(/^רבי /, "")//.replace('איד', 'ייד')//.replace(/^הרב /, "").replace(/\"הייליגע\"/g, "הייליגע").replace('דעיוויד', 'דייוויד'); | ||
$.ajax({ | $.ajax({ | ||
url: '//www.wikidata.org/w/api.php', | url: '//www.wikidata.org/w/api.php', | ||
שורה 36: | שורה 36: | ||
'action': 'wbgetentities', | 'action': 'wbgetentities', | ||
'sites': "yiwiki", | 'sites': "yiwiki", | ||
'titles': pageName.replace("רוי:", ""),//.replace('מדינת ישראל', 'ישראל'), | 'titles': pageName,//.replace("רוי:", ""),//.replace('מדינת ישראל', 'ישראל'), | ||
'props': 'descriptions', | 'props': 'descriptions', | ||
'languages': 'he|en|de' | 'languages': 'he|en|de|yi' | ||
}, | }, | ||
dataType: 'jsonp', | dataType: 'jsonp', | ||
שורה 84: | שורה 84: | ||
function addDesc(pageName, descriptions) { | function addDesc(pageName, descriptions) { | ||
var text = ''; | var text = ''; | ||
if ('yi' in descriptions) { | |||
text += 'יידיש=' + descriptions.yi.value + '|'; | |||
} | |||
if ('en' in descriptions) { | if ('en' in descriptions) { | ||
text += 'ענגליש=' + descriptions.en.value + '|'; | text += 'ענגליש=' + descriptions.en.value + '|'; |
רעוויזיע פון 22:59, 23 אקטאבער 2023
mw.loader.using(['mediawiki.jqueryMsg']).done(function () {
function listPages() {
const api = new mw.Api();
api.get({
"action": "query",
"format": "json",
"list": "allpages",
"utf8": 1,
"apnamespace": "0",
"apfilterredir": "nonredirects",
//"apfrom": 'רבי שלמה האלבערשטאם',
"aplimit": "300"
}).done((data) => {
//console.table(data);
const list = data.query.allpages;
console.timeLog('מדידת זמן', 'a');
console.table(list);
//var sum = 0;
for (const p in list) {
const pageName = list[p].title;
wikidataDesc(pageName);
//sum++;
//if (sum >= 199) {
// console.log('last was: ', pageName);
//}
}
})
}
function wikidataDesc(page) {
const pageName = page//.replace(/^רבי /, "")//.replace('איד', 'ייד')//.replace(/^הרב /, "").replace(/\"הייליגע\"/g, "הייליגע").replace('דעיוויד', 'דייוויד');
$.ajax({
url: '//www.wikidata.org/w/api.php',
data: {
'format': 'json',
'action': 'wbgetentities',
'sites': "yiwiki",
'titles': pageName,//.replace("רוי:", ""),//.replace('מדינת ישראל', 'ישראל'),
'props': 'descriptions',
'languages': 'he|en|de|yi'
},
dataType: 'jsonp',
cache: true
})
.done(function (data) {
console.log(data);
if (data.success) {
//console.table(data.success);
$(function () {
for (var e in data.entities) {
if (e == -1) return;
var descriptions = data.entities[e].descriptions;
if (!descriptions) return console.log('ל' + pageName + ' אין מידע ויקינתונים.');
//const description = descriptions.yi.value;
//console.table(e);
//console.log(pageName + ' : ' + description);
console.timeLog('מדידת זמן', '2');
var params = {
"action": "query",
"format": "json",
"titles": pageName,
"prop": "categories",
"clcategories": "קאַטעגאָריע:בלעטער מיט קורצע דעסקריפציע|קאַטעגאָריע:וויקידאטא שפראכן דעסקריפציע"
}
var api = new mw.Api();
api.get(params).done(function (data) {
for (const p in data.query.pages) {
console.log(data.query.pages[p]);
if (!("categories" in data.query.pages[p])) {
addDesc(pageName, descriptions);
}
}
})
}
});
}
});
}
function addDesc(pageName, descriptions) {
var text = '';
if ('yi' in descriptions) {
text += 'יידיש=' + descriptions.yi.value + '|';
}
if ('en' in descriptions) {
text += 'ענגליש=' + descriptions.en.value + '|';
}
if ('he' in descriptions) {
text += 'העב=' + descriptions.he.value + '|';
}
if ('de' in descriptions) {
text += 'דייטש=' + descriptions.de.value + '|';
}
if (!text) return;
var params = {
"action": "edit",
"format": "json",
"title": pageName,
"summary": "דעסקריפציע",
"minor": 1,
"bot": 1,
"prependtext": '{{דעסקריפציע||' + text + '}}\n',
"appendtext": '\n[' + '[קאַטעגאָריע:וויקידאטא שפראכן דעסקריפציע]]',
"utf8": 1
},
api = new mw.Api();
api.postWithToken('csrf', params).done(function (data) {
console.table(data);
console.timeLog('מדידת זמן', 3);
});
}
if (mw.config.get('wgUserGroups').indexOf('bot') !== -1 && (mw.config.get('wgAction') != 'edit') && confirm('להריץ?')) {
console.time('מדידת זמן');
listPages();
}
})