Tumblr Scraper avatar

Tumblr Scraper

Pricing

from $3.00 / 1,000 posts

Go to Apify Store
Tumblr Scraper

Tumblr Scraper

Scrape Tumblr blog posts without a login. Pull a blog's posts with title, body text, tags, images and links, filter by tag, and walk deeper history when you supply a read key. Built for content research, trend tracking and archiving. One clean row per post, ready for analysis or export.

Pricing

from $3.00 / 1,000 posts

Rating

0.0

(0)

Developer

Goutam Soni

Goutam Soni

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

Scrape public Tumblr blog posts without a login or API key. Give the Tumblr Scraper one or more blogs and it returns clean, structured rows for each post: title, body text, tags, images, outbound links, post type, and publish date.

What it does

  • Scrapes posts from any public Tumblr blog. Pass a blog name, a host, or a full blog URL.
  • Extracts the full post shape: title, a plain-text summary of the body, tags, image URLs, outbound links, post type, and publish date.
  • No login and no API key required for the latest posts of each blog.
  • Tag filtering. Keep only posts that carry a specific tag (case-insensitive).
  • Multi-blog batches. Pass many blogs at once and process them in parallel.
  • Deeper history (optional). Supply an optional read key and raise the per-blog cap to walk further back through a blog's archive, with note counts included.
  • Clean, stable output. Every row uses the same field shape, so the dataset drops straight into a spreadsheet, database, or downstream automation.

Use cases

  • Content and trend research. Track what topics, tags, and formats a niche or fandom is posting about right now.
  • Brand and keyword monitoring. Watch how a brand, product, or hashtag is being discussed across blogs you care about.
  • Lead and creator discovery. Find active creators in a space by pulling their recent posts, tags, and linked sites.
  • Dataset building. Collect posts, images, and tags at scale for analysis, archiving, or model training inputs.
  • Competitor and market analysis. Pull the recent output of blogs in your own market to benchmark posting cadence, formats, and themes.

Input

FieldTypeDescription
blogsarrayTumblr blogs to scrape. Each entry can be a blog name (example_blog), a host (example_blog.tumblr.com), or a full URL (https://example_blog.tumblr.com).
tagstringKeep only posts carrying this tag. Case-insensitive. Leave blank to keep every post.
maxPostsPerBlogintegerMaximum posts returned per blog. Default 20. The latest batch is served with no key; to go beyond it, also supply a read key.
apiKeystringOptional read key. Only needed when you want more than the latest batch of posts per blog. Without it, the latest posts are returned with no credentials at all.
concurrencyintegerHow many blogs to process in parallel. Default 5.
proxyConfigobjectOptional proxy configuration. Not required for the public endpoints, but available if you wish to route through one.

Example input

{
"blogs": ["example_blog", "https://another-example.tumblr.com"],
"tag": "art",
"maxPostsPerBlog": 50
}

Output

Each post is one dataset row with a stable, importance-ordered shape:

{
"type": "post",
"postId": "812545258409934848",
"blog": "example_blog.tumblr.com",
"url": "https://example_blog.tumblr.com/post/812545258409934848",
"noteCount": 128,
"postType": "photo",
"title": "An example post",
"summary": "A short plain-text rendering of the post body.",
"tags": ["art", "example"],
"images": ["https://example.com/image.jpg"],
"links": ["https://example.com"],
"date": "2026-03-30T20:45:43.000Z"
}

Key fields

  • postId, url, blog identify the post and where it lives.
  • postType classifies the post (text, photo, or video) so you can split content by format.
  • noteCount is the post's engagement (likes plus reblogs). It is populated when you supply a read key.
  • title, summary, tags carry the readable content. summary is a plain-text rendering of the body, not the raw HTML.
  • images, links are de-duplicated arrays of media URLs and outbound links found in the post.
  • date is the ISO 8601 publish time.

FAQ

Is it free? How is it priced? The actor is pay per result, so you are billed for the posts it returns. There is no separate per-run start fee. Pull a few posts to try it, then scale up.

Do I need a Tumblr login or password? No. The latest posts of any public blog are returned with no login, no password, and no API key. A read key is optional and only needed to go beyond the latest batch into a blog's deeper archive.

How many posts can I get per blog? The latest batch (about 20 posts) is available with no key. To reach further back through a blog's archive, raise maxPostsPerBlog and supply a read key.

How fast is it? Blogs are processed in parallel (configurable with concurrency), so a batch of many blogs finishes far quicker than running them one at a time.

Can I filter by tag? Yes. Set tag to keep only posts carrying that tag. Matching is case-insensitive.

Why is noteCount empty on some runs? Note counts are returned on the deeper-history path, which needs a read key. The keyless latest-posts path does not expose them, so noteCount stays empty there.

What about copyrighted content? Post bodies are returned as a plain-text summary. Full long-form copyrighted bodies (such as complete song lyrics) are not stored.

Privacy

To improve our actors we collect anonymized usage telemetry (run stats and input patterns). No personal account data is collected.