# Twitter Comments Scraper - No Login Needed (`iron-crawler/twitter-comments`) Actor

Scrape Twitter comments at lightning speed. Zero-config API pipeline exports bulk data in JSON/CSV for instant social media sentiment analysis and engagement tracking.

- **URL**: https://apify.com/iron-crawler/twitter-comments.md
- **Developed by:** [Iron Crawler](https://apify.com/iron-crawler) (community)
- **Categories:** Social media, Developer tools, Automation
- **Stats:** 134 total users, 9 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.50 / 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.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — 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

"# Twitter Comments Scraper - No Login Needed

### What does Twitter Comments Scraper - No Login Needed do?

This tool extracts comment data from Twitter (X.com) posts without requiring authentication or login credentials. Built with a cookieless architecture, the scraper bypasses the need for Twitter accounts, API keys, or session management, making it accessible to anyone who needs comment data quickly and reliably. Simply provide a Tweet ID, and the tool retrieves all associated comments with full metadata including user information, engagement metrics, and timestamps.

**Key Features:**

- Extract comments from any public Twitter post without login
- Retrieve user profiles, comment text, and engagement metrics (likes, replies)
- Export data in JSON, CSV, or Excel formats
- Filter comments by date range and engagement thresholds
- Capture nested reply threads and parent-child comment relationships
- No rate limits or API restrictions
- Fast extraction with automatic pagination handling

### Why scrape Twitter (X.com)?

Social media managers need to extract post comments from various platforms to analyze audience sentiment, engagement trends, and gather qualitative feedback for content strategy optimization. Twitter comments contain valuable insights about how audiences respond to content, what topics resonate, and which messaging drives meaningful conversations. By systematically collecting and analyzing comment data, teams can make data-driven decisions about content direction, community management priorities, and brand positioning.

**Specific Use Cases:**

- **Sentiment Analysis:** Monitor brand mentions and campaign responses to gauge public perception and identify potential PR issues before they escalate.
- **Competitive Intelligence:** Track competitor posts and analyze their audience engagement patterns to identify content gaps and opportunities.
- **Content Strategy Optimization:** Identify which topics, formats, and messaging styles generate the most meaningful discussions to inform future content creation.

### How to scrape Twitter (X.com) using this tool?

**Step 1: Find the Tweet ID**

Navigate to the Twitter post you want to scrape. The Tweet ID is the long number in the URL (e.g., `https://twitter.com/user/status/1738106896777699464` where `1738106896777699464` is the Tweet ID).

**Step 2: Configure the input parameters**

Enter the Tweet ID into the scraper input field. Optionally, set maximum comment limits or date filters. Note that **1 page ≈ 50 items**, so adjust your pagination settings based on expected comment volume.

**Step 3: Run and Download**

Click ""Start"" to begin the extraction. Once complete, download your data in JSON, CSV, or Excel format for analysis in your preferred tools.

### What are the input parameters?

| Field | Type | Description |
|-------|------|-------------|
| `tweetId` | String | The unique identifier of the Twitter post from which to extract comments. Found in the tweet URL after `/status/`. Example: `1738106896777699464` |

### What data can you extract?

You can download the following data in JSON, CSV, or Excel formats:

```json
{
  ""comment_id"": ""c_789456123"",
  ""user_id"": ""u_45678912"",
  ""username"": ""tech_enthusiast"",
  ""comment_text"": ""Great article! Thanks for sharing these insights."",
  ""timestamp"": ""2025-12-24T14:30:22Z"",
  ""likes_count"": 47,
  ""is_edited"": false,
  ""parent_comment_id"": null
}
```

**Key Data Fields:**

- `comment_id`: Unique identifier for each comment
- `user_id`: Twitter user ID of the commenter
- `username`: Display username (handle) of the commenter
- `comment_text`: Full text content of the comment
- `timestamp`: ISO 8601 formatted date and time when the comment was posted
- `likes_count`: Number of likes the comment has received
- `is_edited`: Boolean indicating whether the comment has been modified
- `parent_comment_id`: Reference to parent comment for nested replies (null for top-level comments)

***

Whether you need a post comments scraper for Twitter or a broader social media comments extractor across platforms, this tool provides the foundation for robust social engagement analytics. While specialized tools exist for Instagram post comments scraping and Facebook post comments scraper needs, this Twitter-focused solution helps you export comments from posts efficiently. As a dedicated comment data scraping tool, it empowers teams to transform raw conversation data into actionable insights for community management and content optimization."

# Actor input Schema

## `tweetId` (type: `string`):

Tweet ID

## `maxPages` (type: `integer`):

Maximum number of pages to fetch (pagination handled automatically)

## Actor input object example

```json
{
  "tweetId": "2024799518181700017",
  "maxPages": 1
}
```

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("iron-crawler/twitter-comments").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("iron-crawler/twitter-comments").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{}' |
apify call iron-crawler/twitter-comments --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,iron-crawler/twitter-comments"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/hclan1MOQawRLkPXN/builds/fd6FuKiKbHXp0iszR/openapi.json
