Medium Author RSS Scraper icon

News & feeds · Lead generation

Medium Author RSS Scraper

Scrape any Medium author's published articles via their RSS feed — title, link, author, body excerpt, published date, tags — export to JSON or CSV. A Medium article scraper that works for any public profile, no login. We retry and pace requests so the feed lands.

Free Apify credit covers a first run. No credit card to try.

What this Actor scrapes

Medium publishes an official RSS feed for every author at medium.com/feed/@username. This Actor is a focused medium author scraper: you supply a list of usernames or feed URLs, we fetch each feed, and you get one row per article — title, link, body excerpt (HTML), tags, and published date. It is RSS-only by design: no paywalled HTML, no full-article bypass, no scraping of curated topic pages. That keeps it fast, honest about its scope, and safe from Medium's increasingly aggressive IP-level throttling. For medium articles export in bulk, simply pass a list of usernames and stream the dataset to CSV, JSON, or Excel in one click.

What we handle for you

  • 🛡️ Browser fingerprint rotationcurl-cffi impersonates real Chrome / Firefox / Safari TLS handshakes so the target sees a browser, not Python.
  • 🌐 Residential proxy rotation via Apify Proxy — fresh session and exit IP on every block.
  • 🔁 Retries with exponential backoff on 408 / 429 / 5xx — up to 5 attempts per feed, Retry-After honoured.
  • 🧱 Rate-limit-aware pacing — when Medium pushes back, we slow down and retry rather than letting you hit the ban wall.
  • 🧊 Clean, typed dataset rows — Pydantic-validated, ISO-8601 timestamps, stable IDs, JSON / CSV / Excel export straight from the Apify Console.
  • 💰 Pay-Per-Event pricing — you only pay for results that hit your dataset. No data, no charge.

Use cases

  • Author monitoring — watch a thought leader and pipe new posts to Slack or Notion via n8n.
  • Translation pipeline — bulk-extract a series of articles for DeepL or an in-house translation workflow.
  • Newsletter assembly — combine RSS feeds from 30 authors into one curated weekly digest without hand-rolling RSS parsing.
  • Own-archive backfill — mirror your own Medium catalogue into Ghost, Astro, or Hashnode in minutes.

Input

Paste this into the Apify Console, or send it as the run input over the API. Proxy settings are on by default; you rarely need to touch them.

FieldTypeRequiredWhat it does
usernames array yes List of Medium usernames (with or without the @) or full profile / feed URLs. Each becomes one feed fetch.
maxArticlesPerUser integer no Medium's per-user RSS feed typically exposes the latest 10. We honour that cap.
includeContent boolean no Medium's RSS includes a content:encoded body — we surface it when true.
{
  "usernames": [
    "@Medium"
  ],
  "maxArticlesPerUser": 3,
  "includeContent": false,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}

Output

One row per result, schema-validated before it is written. Export JSON, CSV, Excel or XML from the run, or read it over the API.

usernamearticle_idtitlelinkauthorcontent_htmlcategoriespublishedscraped_at

{
  "username": "@Medium",
  "article_id": "abc123def456",
  "title": "What's new at Medium",
  "link": "https://medium.com/@Medium/whats-new-1abc",
  "author": "Medium",
  "content_html": null,
  "categories": [
    "medium",
    "writing"
  ],
  "published": "2026-04-15T20:00:00+00:00",
  "scraped_at": "2026-06-01T09:00:00+00:00"
}

Pricing

EventPriceWhen
Actor start$0.20Once per run, covers warm-up and proxy session setup.
Result emitted$0.0020Per result written to the dataset.

You pay only for results that land. Cap any run with maxTotalChargeUsd. See pricing & billing for worked examples.

FAQ

Why only ~10 articles per author?
Medium's per-user RSS surface exposes the latest ~10 published posts. This is a Medium platform constraint, not a bug in this Actor. For historical archive scraping, a dedicated approach targeting Medium's older API surfaces would be needed (different Actor).
Is this a general medium scraper or RSS-specific?
RSS-specific — this Actor reads medium.com/feed/@username only. It does not scrape Medium's rendered HTML pages, curated topic feeds, or publication home pages. Keeping the scope narrow is what keeps it reliable and ToS-respectful.
Why is `published` sometimes null?
Some Medium accounts (especially publications) emit malformed or missing timestamps in their RSS. We surface null rather than guess.
What about claps count?
Claps are not in the RSS feed — they require a per-article HTML scrape, which is out of scope.
Publications vs. personal profiles?
Both work — pass @publication-slug or a full medium.com/feed/publication-slug URL.
Is there a Medium API alternative in 2026?
Medium deprecated its official API for third-party developers years ago and has not restored it. The per-author RSS feed (medium.com/feed/@username) is the remaining officially supported programmatic surface for reading author content. This Actor wraps it with proxy rotation and retry logic so it works reliably at scale.

Ready to run it?

Open the listing on Apify, paste the input above, and watch rows land. If it ever breaks, it is our problem before it is yours.

Related Actors

Teams that run this also run