Skip to content

Advanced Feeds (Escape Hatch)

Prefer Getting Started (URL paste) and the Feed Directory first. Use a custom YAML config when auto-source misses items you care about, or when you need reviewable selectors.

  1. Inspect the live page (browser DevTools).
  2. Optionally draft: html2rss capture https://example.com/articles > your-config.yml
  3. Validate: html2rss validate your-config.yml
  4. Live-check: html2rss test your-config.yml, then ship with html2rss apply your-config.yml
  5. Mount into html2rss-web or contribute to html2rss-configs
  6. Keep strategy: auto; if results are incomplete, confirm the companion scraper is configured before adding site-specific controls

html2rss feed is a Thor alias for apply. html2rss auto aliases scrape (one-shot, no YAML).

channel:
url: https://example.com/blog
title: My Blog
selectors:
items:
selector: "article.post"
title:
selector: "h2 a"
url:
selector: "h2 a"
extractor: "href"

Details: Selectors, Strategy.

Terminal window
html2rss validate your-config.yml && \
html2rss apply your-config.yml && \
html2rss apply your-config.yml --input sample.html

Raise --max-redirects / --max-requests only when the site needs more budget.

Bind-mount a feeds file (see production Compose comments):

volumes:
- type: bind
source: ./config/feeds.yml
target: /app/config/feeds.yml
read_only: true

Feeds are served as .rss / .json paths on your instance (for example /example.com/blog.rss).

  1. Fork html2rss-configs
  2. Add lib/html2rss/configs/<domain>/<name>.yml
  3. Include directory.topics, directory.title, and matching channel.title
  4. Open a pull request

Example metadata:

directory:
topics:
- tech
title: Example — News
summary: Short description of what this feed covers.
channel:
url: https://example.com/blog
title: Example — News
language: en
selectors:
items:
selector: "article.post"
title:
selector: "h2 a"
url:
selector: "h2 a"
extractor: "href"

Allowed topics: sports, energy, tech, science, news, entertainment, jobs, finance, security, travel, environment, consumer, civic, product, research.