Pinterest Comments Scraper
Pricing
from $2.49 / 1,000 results
Pinterest Comments Scraper
Scrape comments from Pinterest pins by pin URL. Extracts commenter username, comment text, likes, reply counts, threading, author profiles, and timestamps for sentiment analysis and engagement monitoring.
Pricing
from $2.49 / 1,000 results
Rating
0.0
(0)
Developer
ScrapeAI
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Share
Extract comments, comment replies, engagement metrics, author profiles, and timestamps from Pinterest pins at scale.
Whether you are performing audience sentiment analysis, monitoring brand conversations, researching community trends, or analyzing content performance, Pinterest Comments Scraper delivers rich, structured data directly into Apify datasets in JSON, CSV, or Excel format.
π Key Features
- π Multi-Pin Processing β Scrape comments from multiple Pinterest pins concurrently in a single run.
- π¬ Full Comment Data β Extracts comment text, comment ID, pin ID, creation timestamps, and edit status.
- π§΅ Comment Threading & Replies β Identifies reply comments and attaches parent comment IDs for nested thread analysis.
- π€ Author & Profile Intelligence β Captures commenter usernames, display names, profile URLs, avatar image URLs, and verification status.
- π Engagement Metrics β Extracts like/reaction counts, reply counts, and helpful counts per comment.
- π·οΈ Tags & Mentions β Captures tagged users and attached media links when available.
- β‘ Dynamic API, Relay & DOM Extraction β Uses intercepted Pinterest API feeds first, then the live server-rendered Relay pin metadata to call
UnifiedCommentsResourcedirectly when browser hydration does not issue the comments request, with live DOM selectors as a final fallback. - π‘οΈ Proxy & Anti-Bot Ready β Fully compatible with Apify Proxy and residential proxy pools.
π‘ Use Cases
- Brand & Product Sentiment: Understand what customers and community members think about products or pins.
- Social Listening & Market Research: Discover consumer questions, feedback, and trends across niches.
- Engagement Optimization: Identify which pins generate meaningful discussions and why.
- NLP & Dataset Building: Build labeled text datasets for sentiment classification, spam detection, or conversational AI.
- Competitor Analysis: Analyze comments on competitor pins to discover unmet customer needs and pain points.
π₯ Input Configuration
| Parameter | Type | Default | Required | Description |
|---|---|---|---|---|
pinUrls | Array | β | β Yes | Array of valid Pinterest pin URLs to scrape comments from. The actor does not fabricate fallback URLs when this input is missing. |
maxCommentsPerPin | Integer | 50 | No | Maximum number of comments to extract per pin (1 β 500). |
maxItems | Integer | 200 | No | Maximum total comments across all pins in the run (1 β 5000). |
proxyConfiguration | Object | { "useApifyProxy": true } | No | Proxy settings. Residential proxies recommended for high volume. |
Sample Input JSON
{"pinUrls": ["https://www.pinterest.com/pin/185773553372200236/","https://www.pinterest.com/pin/68749767931326442/"],"maxCommentsPerPin": 50,"maxItems": 200,"proxyConfiguration": {"useApifyProxy": true}}
π€ Output Data Format
Every scraped comment item is stored in the default dataset and includes the following fields:
| Field | Type | Description |
|---|---|---|
id | String | Unique Pinterest comment identifier |
type | String | Item type, always "comment" |
text | String | Full text content of the comment |
likeCount | Integer | Total count of likes and reactions on the comment |
replyCount | Integer | Number of direct replies to this comment |
helpfulCount | Integer | Number of users who marked the comment as helpful |
isReply | Boolean | true if this comment is a reply in a thread |
parentCommentId | String / Null | Identifier of parent comment if this is a reply |
isEdited | Boolean | Whether the comment was edited after posting |
highlightedByPinOwner | Boolean | Whether the pin owner highlighted/pinned this comment |
pinId | String | Pinterest Pin ID |
pinUrl | String | Canonical URL of the Pinterest pin |
authorId | String | Pinterest User ID of the commenter |
authorUsername | String | Commenter's Pinterest username |
authorFullName | String | Commenter's display name |
authorProfileUrl | String | Direct URL to commenter's Pinterest profile |
authorImageUrl | String | URL of commenter's avatar image |
authorFollowerCount | Integer / Null | Commenter's follower count (if publicly available) |
authorIsVerified | Boolean | Whether commenter has a verified identity badge |
authorIsPrivate | Boolean | Whether commenter's profile is private |
taggedUsers | Array | List of user handles tagged/mentioned in the comment |
mediaUrl | String / Null | Attached image or media URL |
createdAt | String | Comment publication timestamp |
updatedAt | String / Null | Comment update timestamp |
scrapedAt | String | ISO 8601 timestamp when scraped |
Sample Output JSON
{"id": "5343634683613731534","type": "comment","text": "OK OK OR SPIDER MIKU I HAD AN IDEA WHERE SHE SWINGS WITH HER TWIN PIGTAILS DO YOU GUYS THINK THATS A COOL IDEA","likeCount": 258,"replyCount": 16,"helpfulCount": 1,"isReply": false,"parentCommentId": null,"isEdited": true,"highlightedByPinOwner": false,"pinId": "185773553372200236","pinUrl": "https://www.pinterest.com/pin/185773553372200236/","authorId": "978618331437365287","authorUsername": "kawaiiqueenmp3","authorFullName": "sergeant huss","authorProfileUrl": "https://www.pinterest.com/kawaiiqueenmp3/","authorImageUrl": "https://i.pinimg.com/75x75_RS/bd/e3/c8/bde3c854deee7a5383369ddd40cc5ad2.jpg","authorFollowerCount": null,"authorIsVerified": false,"authorIsPrivate": false,"taggedUsers": [],"mediaUrl": null,"createdAt": "Tue, 23 Jan 2024 14:05:21 +0000","updatedAt": null,"scrapedAt": "2026-08-25T11:58:44.704Z"}
π How to Run
Via Apify Console
- Navigate to the Actor on Apify Console.
- Enter one or more Pinterest Pin URLs in the Pin URLs field.
- Adjust Max Comments Per Pin and Max Total Comments as needed.
- Click Start to run the scraper.
- Export results in JSON, CSV, XML, or Excel from the Storage / Dataset tab.
Via Apify API (Node.js)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: 'YOUR_APIFY_TOKEN',});const run = await client.actor('YOUR_ACTOR_NAME/pinterest-comments-scraper').call({pinUrls: ['https://www.pinterest.com/pin/185773553372200236/'],maxCommentsPerPin: 50,maxItems: 100,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Fetched ${items.length} comments:`, items);
Via CLI Locally
npm installapify run
For local runs, place the JSON input in storage/key_value_stores/default/INPUT.json before running apify run. All records are fetched live for the supplied pin URLs; the Actor does not create fallback pin URLs or static comment records.
π οΈ Tips & Best Practices
- Proxies: When scraping at scale across multiple pins, enable Apify Proxy (
RESIDENTIALgroup) to avoid rate limiting. - Pins Without Comments: Pins with comments disabled or pins that have no comments are gracefully handled and logged without failing the entire run.
- Exporting: You can download results in CSV or JSON at any point, even while the scraper is still running.
