Skip to content

deus-ex-code/bookmarks-to-RSS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

Bookmarks to RSS (OPML)

Small, explicit CLI tool that converts Chrome bookmarks.html (or a plain list of domains/URLs) into an OPML file with detected RSS/Atom feeds.

Features

  • Parse Chrome bookmarks HTML
  • Or use a plain list of domains/URLs (one per line)
  • Optional cleaning: strip www, app, docs, and subdomains
  • Optional homepage simplification
  • RSS/Atom discovery via <link rel="alternate"> + fallback guesses
  • Multi-threaded fetching with progress output
  • Export to OPML for NetNewsWire and other readers

Requirements

  • Python 3.9+

Quick Start

  1. Export Chrome bookmarks as bookmarks.html

  2. Run:

python3 bookmarks_to_rss.py \
  --bookmarks /path/to/bookmarks.html \
  --out feeds.opml \
  --workers 10 \
  --verbose

Inputs

Bookmarks HTML

python3 bookmarks_to_rss.py \
  --bookmarks /path/to/bookmarks.html \
  --out feeds.opml

Domain/URL list

python3 bookmarks_to_rss.py \
  --domains-file /path/to/domains_or_urls.txt \
  --out feeds.opml

Cleaning domains before discovery

Strip www, app, docs and optionally remove subdomains, then save the resulting list.

python3 bookmarks_to_rss.py \
  --bookmarks /path/to/bookmarks.html \
  --clean-domains-out clean_domains.txt \
  --strip-subdomains \
  --list-only

If you already have a list, you can still clean it:

python3 bookmarks_to_rss.py \
  --domains-file /path/to/domains_or_urls.txt \
  --clean-domains-out clean_domains.txt \
  --strip-subdomains \
  --list-only

Options

  • --bookmarks Path to Chrome bookmarks.html
  • --domains-file Path to domain/URL list (one per line)
  • --out Output OPML path
  • --workers Concurrent workers (default: 1)
  • --timeout HTTP timeout seconds (default: 8)
  • --sleep Delay between requests (default: 0)
  • --homepage Simplify URLs to homepage before discovery
  • --strip-subdomains Keep last two labels only (example: a.b.c.com -> c.com)
  • --clean-domains-out Write cleaned domains to a file
  • --list-only Output URL list and exit
  • --list-out Write URL list to a file
  • --verbose Show per-URL status

Notes

  • This tool is intentionally minimal and explicit (no hidden side effects).
  • OPML can be imported into NetNewsWire or any RSS reader.

About

Takes chrome bookmarks.hmtl for input and gives .OPML in ouput

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages