MediaWiki:Gadget-LabelScan.js: Unterschied zwischen den Versionen
Admin (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Admin (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 36: | Zeile 36: | ||
await loadTesseract(); | await loadTesseract(); | ||
return Tesseract.recognize(file, "eng", { | return Tesseract.recognize(file, "deu+eng", { | ||
tessedit_char_whitelist: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 -'()", | |||
tessedit_pageseg_mode: 6, | |||
logger: m => { /* Fortschritt optional */ } | |||
}).then(r => r.data.text || ""); | }).then(r => r.data.text || ""); | ||
} | } | ||
// Sucht nach Destillerie & Alter | // Sucht nach Destillerie & Alter | ||
function extractQuery(text) { | |||
text = text.replace(/\s+/g, " "); | |||
const names = text.match(/\b([A-Z][a-z]{3,})\b/g) || []; | |||
const ages = text.match(/\b([1-3]?\d)\s?(years?|yo|Jahre|Jahr)\b/gi) || []; | |||
const years = text.match(/\b(19|20)\d{2}\b/g) || []; | |||
const parts = [...names.slice(0, 2), ...ages.slice(0, 1), ...years.slice(0, 1)]; | |||
return parts.join(" "); | |||
} | |||
async function searchWiki(q) { | async function searchWiki(q) { | ||