add some filters for unwanted content
This commit is contained in:
@@ -120,7 +120,31 @@ async function getReadable(feed, index) {
|
|||||||
el.remove()
|
el.remove()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
// Alpine.js widget overlays: x-cloak marks elements that should be hidden
|
||||||
|
// until Alpine.js initialises (prevents FOUC). These are always widget
|
||||||
|
// containers (e.g. taz's "taz schneller googeln" promo), never article
|
||||||
|
// content, so they're safe to remove unconditionally.
|
||||||
|
doc.querySelectorAll('[x-cloak]').forEach(el => el.remove())
|
||||||
|
// taz subscription promo blocks: a standalone <section> whose link(s) point
|
||||||
|
// to an /abo/ subscription page. Only climb to <section>, not <article>,
|
||||||
|
// to avoid accidentally removing the main article body.
|
||||||
|
doc.querySelectorAll('a[href*="/abo/"]').forEach(el => {
|
||||||
|
const container = el.closest('section')
|
||||||
|
if (container) container.remove()
|
||||||
|
})
|
||||||
|
// taz "Mehr zum Thema" related-articles teaser section.
|
||||||
|
doc.querySelectorAll('#articleTeaser').forEach(el => el.remove())
|
||||||
|
// taz subsidiary magazine promo blocks (e.g. taz FUTURZWEI): the promo
|
||||||
|
// <article> carries an aria-label containing "Abo".
|
||||||
|
doc.querySelectorAll('article[aria-label*="Abo"]').forEach(el => {
|
||||||
|
const container = el.closest('section') ?? el
|
||||||
|
container.remove()
|
||||||
|
})
|
||||||
const article = new Readability(doc).parse();
|
const article = new Readability(doc).parse();
|
||||||
|
if (!article) {
|
||||||
|
showMessageForXSeconds('Could not extract readable content.', 5)
|
||||||
|
return
|
||||||
|
}
|
||||||
feeds.value[index].content = article.content;
|
feeds.value[index].content = article.content;
|
||||||
feeds.value[index].readable = true;
|
feeds.value[index].readable = true;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|||||||
Reference in New Issue
Block a user