Files
RSSHub/lib
20c832842f feat(route): add EFE Noticias route (#22165)
* feat(route): add EFE Noticias route

Add route for EFE (Agencia EFE) Spanish news agency with 10 categories:
mundo, espana, economia, cultura, ciencia-y-tecnologia, deportes,
salud, medio-ambiente, educacion, euro-efe.

Features:
- Article images via enclosure and inline in description
- Ad filtering (auto-banner, srr-main, promotional logos)
- Clean img attributes for RSS reader compatibility
- Configurable item limit via query parameter

* fix(route/efe): address review comments

- Remove `limit` from `parameters` (query param, not path param)
- Scope article link selector to `.elementor-loop-container` to avoid anti-pattern #1
- Remove unnecessary `.first()` on `.elementor-widget-theme-post-content`
- Remove `.srr-main` from cleanup (not inside content area), keep `decoding`/`loading` on images

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix: address review comments for EFE route

- Fix parameters to structured object with only path params
- Scope selector to .elementor-post article links only
- Remove unnecessary .first() on title
- Stop stripping image attributes (decoding, loading, width, etc.)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix: revert overly specific selector that broke all routes

.elementor-post class doesn't exist on EFE site, use attribute
selector to pre-filter article URLs instead.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix: fetch articles sequentially to avoid 429 rate limiting

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix: suppress no-await-in-loop lint for sequential rate-limited fetches

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix: use specific selector for article title links only

Select only .elementor-widget-theme-post-title a inside .e-loop-item
to avoid matching image links, category links, or duplicate entries.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix: use single quotes for static string (oxlint stylistic/quotes)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix: use Promise.all and remove Set (selector matches once per article)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* refactor: use Array.map instead of push for link collection

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix(efe): use pMap to limit concurrency and avoid 429 rate limiting

---------

Co-authored-by: mlkgrnt <mlkgrnt@users.noreply.github.com>
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-09 03:10:50 +00:00
..
…
2026-03-17 15:59:10 +08:00
2026-03-25 23:16:40 +08:00
2026-04-24 11:35:51 +08:00
2026-04-13 23:45:08 +08:00
…
2026-04-14 15:15:05 +00:00
…
…
2026-04-14 15:15:05 +00:00
…