Files
omnivore/packages/api/src/utils/wikipedia-handler.ts
2022-05-10 17:01:23 +08:00

17 lines
543 B
TypeScript

export class WikipediaHandler {
name = 'wikipedia'
// eslint-disable-next-line @typescript-eslint/no-unused-vars
shouldPrehandle = (url: URL, _dom: Document): boolean => {
return url.hostname.endsWith('wikipedia.org')
}
prehandle = (url: URL, dom: Document): Promise<Document> => {
// This removes the [edit] anchors from wikipedia pages
dom.querySelectorAll('.mw-editsection').forEach((e) => e.remove())
// this removes the sidebar
dom.querySelector('.infobox')?.remove()
return Promise.resolve(dom)
}
}