Tumblr Scraper
Pricing
from $3.00 / 1,000 posts
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
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
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
| Field | Type | Description |
|---|---|---|
blogs | array | Tumblr 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). |
tag | string | Keep only posts carrying this tag. Case-insensitive. Leave blank to keep every post. |
maxPostsPerBlog | integer | Maximum posts returned per blog. Default 20. The latest batch is served with no key; to go beyond it, also supply a read key. |
apiKey | string | Optional 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. |
concurrency | integer | How many blogs to process in parallel. Default 5. |
proxyConfig | object | Optional 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,blogidentify the post and where it lives.postTypeclassifies the post (text,photo, orvideo) so you can split content by format.noteCountis the post's engagement (likes plus reblogs). It is populated when you supply a read key.title,summary,tagscarry the readable content.summaryis a plain-text rendering of the body, not the raw HTML.images,linksare de-duplicated arrays of media URLs and outbound links found in the post.dateis 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.