Tumblr Blog Search Scraper avatar

Tumblr Blog Search Scraper

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Tumblr Blog Search Scraper

Tumblr Blog Search Scraper

Find public Tumblr blogs by keyword and extract names, descriptions, avatars, titles and profile URLs.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

ScrapingMonkey

ScrapingMonkey

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Find public Tumblr blogs by search query. Tumblr Blog Search Scraper exports each discovered blog with its name, UUID, URL, title, description and available avatar information.

Build a list of relevant sources before selecting blogs for profile enrichment or post collection.

At a glanceDetails
πŸ“₯ InputSearch keywords or public Tumblr blog search URLs.
πŸ“€ OutputOne blog per success row, with source input retained
πŸ“„ PaginationpagesPerSearch limits result pages per query. Short searches can end before the requested budget; no arbitrary page-size setting is exposed.
πŸ” Login requiredNo
⚑ ProcessingUp to 5 HTTP requests concurrently with automatic retries
πŸ’Ύ DeliveryOne Apify dataset view, useful flat columns and complete nested JSON

What the Tumblr Blog Search scraper collects πŸ”Ž

The Actor collects blog cards from Tumblr search and removes repeated blog identities within each search input.

Data can include:

  • Blog name and stable UUID
  • Profile URL, title and description
  • Available avatar and profile presentation fields
  • Original search input on every row

How to collect blog search results from Tumblr πŸš€

  1. Enter one or more supported inputs in inputList.
  2. Set the result-page budget for each input.
  3. Start the Actor.
  4. Open the Blogs dataset view and review the individual records.
  5. Export the dataset or retrieve it from your application.
{
"inputList": [
"photography"
],
"pagesPerSearch": 1
}

pagesPerSearch limits result pages per query. Short searches can end before the requested budget; no arbitrary page-size setting is exposed.

Tumblr blog search results data and complete output πŸ“¦

FieldTypeMeaning
statusstringResult status: success or failed.
inputstringOriginal submitted input.
namestring or nullPublic name of this blog or nested object.
uuidstring or nullStable Tumblr blog UUID when supplied.
urlstring or nullPublic source URL for this object.
blog_view_urlstring or nullTumblr’s public blog-view URL when supplied.
titlestring or nullPublic title supplied for this object.
descriptionstring or nullAvailable public description; null when not supplied.
created_atstring or nullCreation time in an ISO-formatted date string when supplied.
updated_atstring or nullLast update time in an ISO-formatted date string when supplied.
total_postsinteger or nullPublic total-post counter when supplied; not the number of rows collected.
avatar_urlstring or nullSelected available blog avatar URL.
avatar_imagesarray or nullAvailable blog avatar image variants.
avatar_images[].urlstring or nullPublic source URL for this object.
avatar_images[].widthinteger or nullAvailable image or media width in pixels.
avatar_images[].heightinteger or nullAvailable image or media height in pixels.
header_image_urlstring or nullAvailable public blog header-image URL.
top_tagsarray or nullPublic top-tag names returned for the blog, when present.
is_adultboolean or nullSource adult-content flag for the blog when supplied.
is_nsfwboolean or nullSource NSFW flag when supplied.
is_password_protectedboolean or nullSource password-protection flag when supplied; it grants no access.
ask_enabledboolean or nullWhether the source reports that the blog accepts asks.
allow_anonymous_asksboolean or nullWhether the source reports that anonymous asks are enabled.
share_likesboolean or nullSource setting describing whether the blog shares its likes.
share_followingboolean or nullSource setting describing whether the blog shares followed blogs.
share_repliesboolean or nullSource setting describing whether the blog shares replies.
website_urlsarray or nullPublic website links returned or extracted from available blog information.

Every top-level output field appears in these complete examples. The success example is normalized from a public response; its values are a snapshot and can change. Nested arrays remain inside their parent result.

Complete representative success result:

{
"status": "success",
"input": "photography",
"name": "requiem-on-water",
"uuid": "t:cB7bh4mMRBhs_WobjLa-4w",
"url": "https://requiem-on-water.tumblr.com/",
"blog_view_url": "https://www.tumblr.com/requiem-on-water",
"title": "The Anatomy of Melancholy",
"description": "From the moment we are born, we begin to die.\n\n☾ Β Β·Β  β‹†ο½‘Λšβœ©",
"created_at": null,
"updated_at": null,
"total_posts": null,
"avatar_url": "https://64.media.tumblr.com/c7bfa006d63ea8411423aa2ad5f1ecb4/91b892683d24c2ee-c1/s512x512u_c1/e906c3e7a4440021e65358230c80ae686ba87523.jpg",
"avatar_images": [
{
"url": "https://64.media.tumblr.com/c7bfa006d63ea8411423aa2ad5f1ecb4/91b892683d24c2ee-c1/s64x64u_c1/0edb3a68d2417630ae7984c0d6c504d46ef9c676.jpg",
"width": 64,
"height": 64
},
{
"url": "https://64.media.tumblr.com/c7bfa006d63ea8411423aa2ad5f1ecb4/91b892683d24c2ee-c1/s96x96u_c1/2ea45ae8ade1cb18d7e0c2f49c2a11a8683de6a9.jpg",
"width": 96,
"height": 96
},
{
"url": "https://64.media.tumblr.com/c7bfa006d63ea8411423aa2ad5f1ecb4/91b892683d24c2ee-c1/s128x128u_c1/e04ff43821019c178ccfab5a405caadd4b692419.jpg",
"width": 128,
"height": 128
},
{
"url": "https://64.media.tumblr.com/c7bfa006d63ea8411423aa2ad5f1ecb4/91b892683d24c2ee-c1/s200x200u_c1/40d946a349444cde78c3efdaccd1487c27767961.jpg",
"width": 200,
"height": 200
},
{
"url": "https://64.media.tumblr.com/c7bfa006d63ea8411423aa2ad5f1ecb4/91b892683d24c2ee-c1/s512x512u_c1/e906c3e7a4440021e65358230c80ae686ba87523.jpg",
"width": 512,
"height": 512
}
],
"header_image_url": "https://64.media.tumblr.com/cb949d9e28adc1fff2addd63648c76b4/91b892683d24c2ee-72/s1920x1080/35b05f4b3deefaea1bafcc15b3dcd468c3f814fa.jpg",
"top_tags": [],
"is_adult": false,
"is_nsfw": null,
"is_password_protected": null,
"ask_enabled": true,
"allow_anonymous_asks": null,
"share_likes": false,
"share_following": false,
"share_replies": null,
"website_urls": [
"https://requiemonwater.redbubble.com/?asc=u",
"https://ko-fi.com/requiemonwater"
]
}

Complete failed result:

{
"status": "failed",
"input": "invalid input",
"name": null,
"uuid": null,
"url": null,
"blog_view_url": null,
"title": null,
"description": null,
"created_at": null,
"updated_at": null,
"total_posts": null,
"avatar_url": null,
"avatar_images": null,
"header_image_url": null,
"top_tags": null,
"is_adult": null,
"is_nsfw": null,
"is_password_protected": null,
"ask_enabled": null,
"allow_anonymous_asks": null,
"share_likes": null,
"share_following": null,
"share_replies": null,
"website_urls": null
}

A failed row preserves input, sets status to failed, and sets every other top-level field to null. The run log records the reason. Optional successful fields can be null or empty when Tumblr does not supply them. Object fields are exposed through useful columns in the single Blogs view; arrays are not expanded into extra result rows.

Input requirements and pagination settings βš™οΈ

ParameterTypeRequiredDefaultRules
inputListarray of stringsYesNoneSearch keywords or public Tumblr blog search URLs. At least 1 item.
pagesPerSearchintegerNo1Maximum result pages per input. Setup requests do not count as pages. Stops when the source has no next page or repeats a continuation. Actual rows per page can vary. Minimum 1.

Enter search queries or supported blog-search URLs. This Actor searches for blogs, not posts or tags.

Enter a query such as photography, or a supported URL such as https://www.tumblr.com/search/photography?v=blog. Queries must be nonblank and contain at most 256 characters. A URL explicitly selecting post or tag results is not a blog-search input.

Duplicate normalized inputs are processed once. Within the collection for one source input, repeated records are removed while distinct interactions or objects remain separate. The same object returned for different source inputs retains its source relationship.

The first result page counts as page 1. Public-page preparation and metadata lookups do not consume result pages. Collection stops at your page budget or the end of the available list. A short page alone does not mean that the list has ended.

Tumblr blog search results use cases 🎯

Editorial source discovery

Find candidate blogs for a topic and review their public descriptions.

Topic-based profile lists

Build source-linked lists for later manual classification or profile enrichment.

Content pipeline inputs

Pass chosen blog names into Blog Scraper or Blog Posts Scraper.

Pricing and saved-result behavior πŸ’°

Check the Actor’s Pricing tab for the active pricing model and current rate. Store settings can change, so this README does not claim a fixed price or runtime.

Under dataset-item pricing:

  • Each successful result represents one blog for its source input.
  • An invalid or unavailable input, an input with no accessible results, or an exhausted request can produce a failed row.
  • Retry attempts and supporting requests do not create extra dataset rows by themselves.
  • Nested media, profile information and other arrays remain part of their parent row.
  • A normal empty continuation after earlier successes creates no additional row.
  • Saved failed rows are not assumed to be free; check their treatment in the active pricing configuration.

More inputs and larger page budgets can produce more saved rows. Start with a small run and check actual usage before increasing the workload.

Tumblr blog search results API πŸ”Œ

Replace $ACTOR_ID with the identifier shown in this Actor’s API tab and $APIFY_TOKEN with your Apify token.

curl -X POST "https://api.apify.com/v2/acts/$ACTOR_ID/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"inputList":["photography"],"pagesPerSearch":1}'

Download the dataset in JSON, CSV, Excel or other formats available in the Console, or retrieve it through the Apify API. Use schedules, webhooks and Apify integrations to connect results to Google Sheets, Make, Zapier, cloud storage or your own application. These connections are configured separately by the user.

Reliability, retries, and public-data limits ⚠️

Collection uses pure HTTP with up to five concurrent requests. Invalid syntax and confirmed missing, removed or unavailable targets stop without unnecessary retries. Temporary network or proxy failures, timeouts, blocking responses, malformed data, throttling and server errors allow up to five total attempts per request.

Successful earlier pages remain saved if a later request fails. A normal end after saved results is not retried. An input with no accessible results can receive a failed row; that alone does not prove that its underlying source does not exist. An exhausted later request can add a failed row while preserving previous output.

Search cards can omit fields available on a direct blog profile. Follower counts, contact details and a complete directory of Tumblr blogs are not promised.

Tumblr controls public availability, ranking and optional fields. Result counts can be affected by duplicates, removed content and changes during a run. A page budget is a collection limit, not a promise of exhaustive coverage.

An invalid string within a valid input list does not stop other inputs. Invalid overall configuration, such as a non-string list item or a wrong page-count type, exits before source requests. Startup failures, unavailable dataset storage or an unrecoverable result-save error can still stop the whole run. A failed save is not retried as a new scraping request.

Frequently asked questions ❓

Does it return all blogs about a topic?

No. It returns the public search results supplied by Tumblr within your page budget.

How do I collect posts from discovered blogs?

Export the selected names or profile URLs and use them as inputs to Blog Posts Scraper.

Does it require a Tumblr account or personal cookies?

No. You do not need to provide a Tumblr account, password or personal session cookie. Collection uses HTTP without opening a browser.

What happens to invalid or unavailable inputs?

Invalid individual inputs are recorded as failed without a source request. Confirmed missing or unavailable targets stop without unnecessary retries. Temporary failures allow up to five total attempts per request; other inputs and earlier saved results remain available.

Can I export results or run the same input again?

Yes. Export the default dataset or retrieve it through the Apify API. You can create an Apify schedule and connect completed runs to your own workflow.

For a reproducible issue, use the Actor’s Issues tab and provide the run ID, approximate time, a safe public input, expected behavior and actual result. Include the mode or page budget when relevant. Never share access tokens, personal cookies or proxy credentials.

Use public data responsibly and follow applicable privacy, copyright, contractual and platform requirements before storing, analyzing or redistributing collected information.