Pinterest Scraper
Pricing
Pay per usage
Pinterest Scraper
Scrape Pinterest pins, boards, and user profiles. Search by keyword, extract pin details, images, save counts, comments, creator info, and more.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
abdulrahman alrashid
Actor stats
0
Bookmarked
1
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
Scrape Pinterest at scale. Search for pins by keyword, extract pin details, scrape entire boards, and pull user profile data — all without needing a Pinterest account or API key.
What does Pinterest Scraper do?
This actor lets you extract structured data from Pinterest, including:
- Pin search results — search by any keyword and get pins with titles, descriptions, image URLs, save counts, and creator info
- Pin details — scrape individual pins for full metadata including comments
- Board contents — extract all pins from any public Pinterest board
- User profiles — get follower counts, bio, board lists, and profile metadata
All data is returned as clean JSON, ready for analysis, content research, or integration with your workflow.
Why scrape Pinterest?
Pinterest has over 450 million monthly active users and is one of the largest visual discovery platforms. Common use cases:
- Market research — discover trending products, designs, and visual content in any niche
- Competitor analysis — track what competitors are pinning and how their content performs
- Content inspiration — find high-performing visual content ideas for marketing campaigns
- Trend monitoring — track emerging design, fashion, and lifestyle trends
- Image dataset collection — gather visual datasets for machine learning or creative projects
- Influencer research — analyze creator profiles, follower growth, and content strategy
Input configuration
| Field | Type | Description | Default |
|---|---|---|---|
searchQueries | array | Keywords to search for | — |
boardUrls | array | Pinterest board URLs to scrape | — |
userProfileUrls | array | Pinterest user profile URLs to scrape | — |
pinUrls | array | Individual pin URLs to scrape | — |
maxResults | integer | Max results per query/board (0 = unlimited) | 100 |
scrapeComments | boolean | Also scrape comments on each pin | false |
maxCommentsPerPin | integer | Max comments to scrape per pin | 20 |
proxyConfiguration | object | Proxy settings (residential recommended) | Apify residential |
minDelay | integer | Minimum delay between requests (ms) | 1000 |
maxDelay | integer | Maximum delay between requests (ms) | 3000 |
maxRetries | integer | Max retries for failed requests | 3 |
extendOutputFunction | string | JS function to modify output data | — |
Example input
{"searchQueries": ["modern kitchen design", "minimalist home office"],"boardUrls": ["https://www.pinterest.com/pinterest/pin-of-the-week/"],"userProfileUrls": ["https://www.pinterest.com/pinterest/"],"maxResults": 50,"scrapeComments": false,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Output
Pin data
Each pin result contains:
{"type": "pin","id": "123456789","title": "Modern Kitchen Design Ideas","description": "Beautiful white kitchen with marble countertops...","altText": "A modern kitchen with white cabinets","imageUrl": "https://i.pinimg.com/originals/ab/cd/ef.jpg","link": "https://example.com/kitchen-ideas","dominantColor": "#ffffff","saveCount": 15420,"commentsCount": 87,"reactionsCount": 234,"isVideo": false,"videoUrl": null,"creator": {"id": "987654321","username": "homedesigner","fullName": "Home Designer Pro","imageUrl": "https://i.pinimg.com/avatars/user.jpg","followerCount": 52000,"isVerified": true},"board": {"id": "111222333","name": "Kitchen Inspiration","url": "https://www.pinterest.com/homedesigner/kitchen-inspiration/"},"richMetadata": {"siteName": "Example Blog","title": "50 Modern Kitchen Ideas","description": "Explore the latest kitchen trends..."},"pinUrl": "https://www.pinterest.com/pin/123456789/","createdAt": "2024-01-15T10:30:00","searchQuery": "modern kitchen design","scrapedAt": "2024-03-15T14:22:33.000Z"}
User profile data
{"type": "userProfile","id": "987654321","username": "homedesigner","displayName": "Home Designer Pro","bio": "Interior design tips and inspiration","profileImageUrl": "https://i.pinimg.com/avatars/user_xl.jpg","followerCount": 52000,"followingCount": 1200,"pinCount": 8500,"boardCount": 45,"isVerified": true,"websiteUrl": "https://example.com","location": "Los Angeles, CA","profileUrl": "https://www.pinterest.com/homedesigner/","boards": [{"type": "board","id": "111222333","name": "Kitchen Inspiration","pinCount": 320,"followerCount": 8900}],"scrapedAt": "2024-03-15T14:22:33.000Z"}
Board data
When scraping a board, the first result is the board metadata, followed by all pins on that board.
{"type": "board","id": "111222333","name": "Kitchen Inspiration","description": "My favorite kitchen designs and ideas","pinCount": 320,"followerCount": 8900,"collaboratorCount": 0,"imageUrl": "https://i.pinimg.com/custom_covers/board.jpg","isPrivate": false,"owner": {"id": "987654321","username": "homedesigner","fullName": "Home Designer Pro"},"boardUrl": "https://www.pinterest.com/homedesigner/kitchen-inspiration/","scrapedAt": "2024-03-15T14:22:33.000Z"}
Proxy and anti-bot handling
Pinterest actively blocks automated requests. This scraper handles this by:
- Residential proxies — uses Apify residential proxy group by default for the most reliable results
- Randomized delays — configurable random delays between requests to mimic human behavior
- Automatic retries — retries failed requests with exponential backoff on rate limiting
- CSRF token generation — generates valid-looking CSRF tokens for API requests
- Browser-like headers — sends realistic browser headers with each request
For best results, use residential proxies. Datacenter proxies may work for small volumes but will get blocked more frequently.
Rate limiting
Pinterest enforces rate limits on their internal API. The scraper handles this automatically:
- When a 429 response is received, the scraper waits 30 seconds before retrying
- On repeated rate limits, the wait time increases with each attempt
- You can adjust
minDelayandmaxDelayto control request pacing
For large scraping jobs (1000+ results), consider increasing the delay settings.
Pricing
This actor uses a Pay-Per-Event pricing model:
- $0.50 per 1,000 results
- You only pay for the data you actually receive
- Board metadata entries and user profiles each count as 1 result
Extend output function
You can customize the output by providing a JavaScript function in the extendOutputFunction field. This function receives each data item and can modify or filter it:
async ({ data, customData }) => {// Only keep pins with more than 100 savesif (data.type === 'pin' && data.saveCount < 100) {return null; // Skip this result}// Add a custom fielddata.customTag = 'high-engagement';return data;}
Tips for best results
- Start small — test with
maxResults: 10to verify your configuration works before running large jobs - Use residential proxies — Pinterest is aggressive with bot detection; residential proxies are strongly recommended
- Increase delays for large jobs — if scraping thousands of results, set
minDelayto 2000+ ms - Search queries — use specific, descriptive keywords for more relevant results
- Board scraping — boards can contain thousands of pins; use
maxResultsto limit if you only need a sample - Comments — enabling comment scraping significantly increases run time since each pin requires an additional API call
Limitations
- Only public pins, boards, and profiles can be scraped
- Pinterest may change their internal API at any time, which could temporarily break the scraper
- Very high-volume scraping may trigger IP-level blocks even with residential proxies
- Comment scraping is slower due to per-pin API calls
Support
If you encounter issues or have feature requests, please open an issue on this actor's page or contact the developer.