xkcd Comics Scraper - Titles, Alt Text, Transcripts & Images avatar

xkcd Comics Scraper - Titles, Alt Text, Transcripts & Images

Pricing

from $0.30 / 1,000 results

Go to Apify Store
xkcd Comics Scraper - Titles, Alt Text, Transcripts & Images

xkcd Comics Scraper - Titles, Alt Text, Transcripts & Images

$0.3/1K πŸ”₯ Fast xkcd scraper! Comics β€” title, alt text, image, transcript & date. No key. JSON, CSV, Excel or API in seconds. Grab latest, ranges or specific numbers & pull thousands for content & NLP ⚑

Pricing

from $0.30 / 1,000 results

Rating

0.0

(0)

Developer

ninhothedev

ninhothedev

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

xkcd Comics Scraper πŸ–ŠοΈ

Scrape xkcd comics into clean, structured JSON β€” title, alt text (the mouseover joke), image URL, transcript and publication date β€” with no API key, no login, and no browser. The Actor talks directly to xkcd's official, public JSON API, so it is fast, reliable, and datacenter-proxy friendly (you don't need residential proxies).

Grab the latest N comics, a hand-picked list of numbers, or an entire range β€” up to 1,000 comics per run.


✨ Features

  • Clean JSON output β€” one tidy record per comic, every field nullable and predictable.
  • Alt text included β€” the famous xkcd hover/title-text joke, which most scrapers miss.
  • Transcript field β€” community transcript text where available (great for NLP / search).
  • Three modes β€” latest, comics (specific numbers), range.
  • ISO dates β€” xkcd's split year/month/day is normalised to YYYY-MM-DD.
  • Handles comic #404 gracefully β€” that comic intentionally does not exist and is skipped, not fatal.
  • No API key, no proxies required β€” runs cheaply on the free/starter plan.

πŸš€ Input

FieldTypeDescription
modeselectlatest, comics, or range.
latestCountintegerFor latest: how many recent comics (default 20).
numbersarrayFor comics: e.g. [353, 1234].
fromNumintegerFor range: first comic number (inclusive).
toNumintegerFor range: last comic number (inclusive).
maxItemsintegerHard cap per run (default 100, max 1000).

Example β€” latest 20 comics

{ "mode": "latest", "latestCount": 20 }

Example β€” specific comics

{ "mode": "comics", "numbers": [353, 1234, 936] }

Example β€” a range

{ "mode": "range", "fromNum": 1, "toNum": 100, "maxItems": 100 }

πŸ“¦ Output

Each dataset item:

{
"num": 353,
"title": "Python",
"alt": "I wrote 20 short programs in Python yesterday. It was wonderful. Perl, I'm leaving you.",
"img": "https://imgs.xkcd.com/comics/python.png",
"date": "2007-12-05",
"transcript": "[[ A stick figure is floating in the sky ]] ...",
"url": "https://xkcd.com/353/",
"scraped_at": "2026-07-18T08:00:00+00:00"
}

πŸ’Έ Pricing

This Actor is lightweight β€” it hits a plain JSON endpoint per comic, so runs are cheap. As a rule of thumb, expect roughly ~$0.50 per 1,000 comics in platform usage, depending on your plan and memory settings. Small runs (the latest 20) cost a fraction of a cent.


🎯 Use cases

  • Content & newsletters β€” embed the latest comic, alt text and link automatically.
  • NLP / ML datasets β€” build a labelled corpus of captions, alt text and transcripts for text analysis, humour research, or embeddings.
  • Fan apps & bots β€” power a "random xkcd" Slack/Discord bot, a widget, or a mobile app.
  • Archiving β€” snapshot the full xkcd back-catalogue with stable image URLs and metadata.

πŸ†š Why this Actor?

This ActorManual scrapingRSS feed
Alt text (hover joke)βœ…βš οΈ fragile HTML parsing❌
Transcriptβœ…βš οΈβŒ
Specific numbers / rangesβœ…βš οΈβŒ latest only
ISO datesβœ…βŒβš οΈ
No proxies neededβœ…dependsβœ…


Keywords: xkcd scraper, xkcd api, webcomic scraper, comic scraper, alt text, comic transcript, nlp dataset, randall munroe, geek humor, comic archive.