# Etsy Community Posts discussion Scraper (`getdataforme/etsy-community-posts-scraper`) Actor

An Etsy community post scraper is a tool designed to automatically extract posts, comments, and user interactions from the Etsy community forums. It helps researchers, sellers, or analysts gather insights on trending topics, customer concerns, and marketplace behavior.

- **URL**: https://apify.com/getdataforme/etsy-community-posts-scraper.md
- **Developed by:** [GetDataForMe](https://apify.com/getdataforme) (community)
- **Categories:** E-commerce, News
- **Stats:** 9 total users, 3 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $9.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

### **Etsy Community Posts Scraper: Extract Group Discussions & Community Insights**

#### **What is the Etsy Community Posts Scraper?**

The Etsy Community Posts Scraper is a specialized automation tool designed to extract public forum discussions, threads, and community-driven topics directly from the official Etsy Community platforms. By providing target search queries or keywords, you can automatically monitor seller sentiment, trending platform changes, updates, and community advice without manually browsing hundreds of forum pages.  
Whether you are looking to export data into JSON, CSV, Excel, HTML, or XML, this scraper instantly processes community interactions into clean, structured datasets ready for research and analysis.

#### **What can this Etsy Community Posts Scraper do?**

* Gather Forum Discussions: Extract thread topics, post descriptions, user responses, and historical seller community discussions.  
* Keywords and Topic Targeting: Scan the community forums using specific search queries like "glass", "shipping policies", or "algorithm updates" to extract highly relevant discussions.  
* Track Seller Sentiment: Monitor pain points, complaints, strategies, and successes directly from active Etsy business owners.  
* Performance & Evasion: Utilizes optimized processing to scrape data continuously while navigating platform updates smoothly.

#### **The Apify Platform Advantage**

This Actor is hosted on the enterprise-grade Apify platform, meaning you unlock powerful automation features right out of the box:

* Automated Scheduling: Set the scraper to run automatically at set intervals to track emerging discussions as they happen.  
* API & Webhook Integrations: Automatically feed your scraped forum data straight into external tools, analytical dashboards, or notification channels.  
* Smart Proxy Rotation: Avoid platform restrictions or temporary rate blocks using Apify’s advanced proxy infrastructure.  
* Cloud Infrastructure: Run extensive data gathering loops completely in the cloud without locking up your own computer's memory or resources.

### **What data can you extract from the Etsy Community?**

This scraper isolates primary text strings, user info, and interaction timelines from public forum spaces. Below are the common fields collected by the crawler:

* query (String): The input search keyword used to surface the thread.  
* post\_id (Number): Unique identifier for the specific community thread or post.  
* author\_username (String): The username of the community member who posted.  
* post\_title (String): The subject line or header of the discussion thread.  
* post\_body (String): The full text content of the post or question.  
* view\_count (Number): Total number of times the thread has been viewed.  
* reply\_count (Number): Total number of comments or replies left by other community members.  
* post\_date (String): The timestamp when the discussion was officially published.

### **How do I use the Etsy Community Posts Scraper?**

Getting your dataset takes less than two minutes. Follow these simple steps:

1. Create an account: Sign up for a free account on the Apify Console.  
2. Select the Tool: Open the Etsy Community Posts Scraper in the Apify Store.  
3. Configure the Input: Enter your search target queries (e.g., "glass") and ensure the proxy settings are enabled.  
4. Run: Click the Save & Start button.  
5. Download Data: Once completed, head to the Dataset tab to export your data in your preferred format (CSV, Excel, JSON).

### **How much does it cost to extract Etsy Community data?**

Web scraping costs are kept transparent and predictable. This tool is structurally lightweight to maximize computational efficiency.

* Compute Unit (CU) Consumption: This Actor operates on a usage-based pricing model, drawing directly from standard Apify Compute Units.  
* Free Tier Allocation: Apify provides a $5 monthly credit for free accounts. This free allocation lets you extract thousands of community discussion posts every single month completely free of charge.  
* Seamless Scaling: Scale up processing parameters easily to extract expansive message boards or multiple nested keywords at minimal cost.

### **Input and Output Examples**

#### **Input Configuration**

Setting up your run is highly straightforward. Here is an example of the input configuration structure:  
{  
"queries": \[  
"glass"  
\],  
"proxyConfiguration": {  
"useApifyProxy": true  
}  
}

#### **Output Dataset Example**

The scraper returns clean, structured data. Here is a preview of a single post object from the resulting dataset:  
\[  
{  
"query": "glass",  
"post\_id": 987654321,  
"author\_username": "vintage\_glass\_artisan",  
"post\_title": "Best packaging techniques for shipping fragile glass art?",  
"post\_body": "Hello everyone, I am struggling with rising shipping costs for my glassware. What box sizes and bubble wrapping techniques do you recommend to keep transit safe without doubling package weight?",  
"view\_count": 342,  
"reply\_count": 18,  
"post\_date": "2026-06-01T09:15:00.000Z"  
}  
\]

### **Other Etsy Scrapers You Might Need**

Maximize your marketplace intelligence by combining this forum crawler with our other specialized Etsy tools:

* [Etsy Data Scraper Pro](https://apify.com/getdataforme/etsy-data-scraper-pro)  – Extract complete product listings, pricing history, inventory data, and seller store metrics across the entire platform.  
* [Etsy Product Search Scraper](https://apify.com/getdataforme/etsy-product-search-scraper)  – Scrape targeted search results lists, track product rankings, and monitor trending keywords across Etsy.  
* [Etsy Review Scraper](https://apify.com/getdataforme/etsy-review-scraper) – Extract detailed customer reviews, star ratings, and buyer feedback from any public storefront.

### **FAQ, Disclaimers, and Support**

#### **What are the most common use cases for this data?**

* Market & Trend Analysis: Learn what materials, tools, or problems sellers are actively talking about to optimize your own supply chain.  
* Feature & Policy Changes: Track seller feedback and community reactions immediately following an Etsy platform update.  
* Competitive Intelligence: Understand operational challenges faced by other stores (like shipping delays, raw material supply issues, or customer service roadblocks).  
* Content & SEO Strategy: Identify commonly asked questions within your product niche to formulate helpful tutorials, blogs, or marketing copy.

#### **Is it legal to scrape Etsy Community forums?**

Yes. This scraper extracts public data that is freely accessible to anyone browsing the web. It does not scrape private messaging logs, personal emails, or account credentials. Remember to store and handle public usernames responsibly and in strict compliance with localized data regulations like GDPR or CCPA.

#### **How do I optimize my scraping queries?**

To maximize data accuracy, use targeted, niche keywords (like specific craft supplies or known error codes) rather than extremely broad search words. Always keep the proxy option enabled to secure predictable connection times and clear request execution.

#### **Need support or a custom scraping solution?**

Platform layouts change over time, which can sometimes impact specific text extraction points. If you run into any issues, notice missing data strings, or require a customized enterprise solution built for a different platform altogether, please open a ticket in the Issues tab or contact our team via our profile page.  

Email: support@getdataforme.com
Website: https://getdataforme.com/contact/

# Actor input Schema

## `queries` (type: `array`):

No description
## `proxyConfiguration` (type: `object`):

Specifies proxy servers that will be used by the scraper in order to hide its origin.

## Actor input object example

```json
{
  "queries": [
    "glass"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
````

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "queries": [
        "glass"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("getdataforme/etsy-community-posts-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "queries": ["glass"],
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("getdataforme/etsy-community-posts-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "queries": [
    "glass"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call getdataforme/etsy-community-posts-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=getdataforme/etsy-community-posts-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Etsy Community Posts discussion Scraper",
        "description": "An Etsy community post scraper is a tool designed to automatically extract posts, comments, and user interactions from the Etsy community forums. It helps researchers, sellers, or analysts gather insights on trending topics, customer concerns, and marketplace behavior.",
        "version": "0.0",
        "x-build-id": "KOhfsCuizGWVDVfYx"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/getdataforme~etsy-community-posts-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-getdataforme-etsy-community-posts-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/getdataforme~etsy-community-posts-scraper/runs": {
            "post": {
                "operationId": "runs-sync-getdataforme-etsy-community-posts-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/getdataforme~etsy-community-posts-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-getdataforme-etsy-community-posts-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "queries"
                ],
                "properties": {
                    "queries": {
                        "title": "List of queries for searching community posts",
                        "type": "array",
                        "description": "",
                        "items": {
                            "type": "string"
                        }
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Specifies proxy servers that will be used by the scraper in order to hide its origin.",
                        "default": {
                            "useApifyProxy": true
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
