# 🚀 Instagram Posts Scraper ⚡ No Login Required (`vulnv/instagram-posts-scraper`) Actor

Extract detailed data from Instagram posts including captions, likes, comments, images, videos, hashtags, tagged users, and creator details. Bulk processing supported. No Instagram authentication needed - just provide post URLs and get structured JSON data.

- **URL**: https://apify.com/vulnv/instagram-posts-scraper.md
- **Developed by:** [VulnV](https://apify.com/vulnv) (community)
- **Categories:** Social media
- **Features:** Limited permissions
- **Stats:** 30 total users, 1 monthly users, 100.0% runs succeeded, 2 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.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/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## 🚀 Instagram Posts Scraper ⚡ No Login Required

### Overview

The **Instagram Posts Scraper** is an Apify Actor that extracts detailed data from **Instagram posts** at scale. Perfect for content creators, social media marketers, influencer researchers, and brand analysts — with **no Instagram login, cookies, or browser automation required**.

✅ No Instagram login required | ✅ Bulk post processing | ✅ Structured JSON output | ✅ High success rate

***

#### **Complete Post Data**

- **Media Information** — Photos, videos, thumbnail, carousel content (post_content), alt text, shortcode
- **Engagement Metrics** — Likes, comments count
- **Content Details** — Description/caption, hashtags, content type (Image/Video/Carousel)
- **Creator Details** — Username, user ID, profile image, follower count, posts count, verified status, profile URL
- **Partnership Info** — Paid partnership status and details
- **Metadata** — Post date, post ID, content ID, audio, video duration, timestamp

#### **Key Features**

- **No Authentication Required** — Works without Instagram cookies or login
- **Bulk Processing** — Handle multiple post URLs in one run
- **Clean JSON Output** — Structured, ready-to-use data format
- **Real-time Processing** — Monitor extraction progress
- **High Reliability** — Built-in retry mechanisms and error handling

***

### 🧾 Input Configuration

Submit an array of Instagram Post URLs via Apify's input:

```json
{
  "urls": [
    "https://www.instagram.com/p/Cuf4s0MNqNr",
    "https://www.instagram.com/p/DP861NijuwE"
  ]
}
```

***

### 📤 Output Format

Each post will return detailed data such as:

```json
{
  "url": "https://www.instagram.com/p/DP861NijuwE",
  "user_posted": "amyclaireboutique",
  "description": "✨ The ultimate outfit finisher! A scarf instantly elevates any look. 🌸\nBecause when in doubt… just add a scarf. 💕\n\n🛍️ Shop at @amyclaireboutique link in bio!\n#amyclaireboutique #stylemadeeasy #scarfstyle #boutiqueaccessories #fallfashion",
  "hashtags": [
    "#amyclaireboutique",
    "#stylemadeeasy",
    "#scarfstyle",
    "#boutiqueaccessories",
    "#fallfashion"
  ],
  "num_comments": 0,
  "date_posted": "2025-10-18T13:14:07.000Z",
  "likes": 7,
  "photos": ["https://scontent.cdninstagram.com/..."],
  "post_id": "3746127733433756676",
  "shortcode": "DP861NijuwE",
  "content_type": "Image",
  "pk": "3746127733433756676",
  "content_id": "DP861NijuwE",
  "thumbnail": "https://scontent.cdninstagram.com/...",
  "followers": 321,
  "posts_count": 105,
  "profile_image_link": "https://scontent.cdninstagram.com/...",
  "is_verified": false,
  "is_paid_partnership": false,
  "partnership_details": null,
  "user_posted_id": "77561612778",
  "post_content": [
    {
      "index": 0,
      "type": "Photo",
      "url": "https://scontent.cdninstagram.com/...",
      "id": "3746127733433756676",
      "alt_text": "Photo by Amy Claire Boutique on October 18, 2025."
    }
  ],
  "audio": null,
  "profile_url": "https://www.instagram.com/amyclaireboutique",
  "videos_duration": null,
  "images": [],
  "alt_text": "Photo by Amy Claire Boutique on October 18, 2025.",
  "photos_number": 0,
  "timestamp": "2026-02-22T19:47:07.423Z",
  "input": {
    "url": "https://www.instagram.com/p/DP861NijuwE"
  }
}
```

> **Note:** The exact output fields depend on the data available for each post. Some fields like `audio` or `videos_duration` may be `null` for image-only posts. Long CDN URLs are truncated above for readability.

***

### 📊 Output & Export

#### **Dataset Storage**

- All extracted data is stored in your Apify dataset
- Each post becomes one dataset item
- Failed extractions are logged with error details

#### **Export Formats**

- **JSON** — Raw structured data for API integration
- **CSV** — Spreadsheet-compatible format
- **Excel** — Formatted spreadsheet with multiple sheets

***

### 💼 Common Use Cases

#### **Content Strategy & Trend Analysis**

- Analyze trending post formats, hashtags, and content types
- Study viral content patterns and engagement drivers
- Research optimal posting times and caption strategies

#### **Influencer Marketing & Research**

- Evaluate influencer post performance and engagement rates
- Compare content quality across potential brand ambassadors
- Track sponsored post metrics and ROI

#### **Competitive Analysis**

- Monitor competitor post strategies and performance
- Benchmark engagement metrics against industry standards
- Identify successful content themes in your niche

#### **Brand Monitoring**

- Track brand mentions and tagged posts
- Analyze user-generated content and sentiment
- Monitor campaign hashtag performance

#### **Academic & Market Research**

- Study social media content trends at scale
- Analyze visual content engagement patterns
- Research platform-specific content performance

***

### ✅ Example Use

```json
{
  "urls": [
    "https://www.instagram.com/p/Cuf4s0MNqNr",
    "https://www.instagram.com/p/DP861NijuwE"
  ]
}
```

After execution, the dataset will contain detailed data for each Instagram post including media URLs, engagement metrics, creator information, comments, and more.

### 🔗 Related Scrapers

Check out these other scrapers from [Vulnv on Apify](https://apify.com/vulnv):

| Scraper | Description |
|---------|-------------|
| [Instagram Profile Scraper](https://apify.com/vulnv/instagram-profile-scraper) | Extract profile data, follower counts, bio, posts, and engagement metrics from public Instagram profiles |
| [Instagram Reels Scraper](https://apify.com/vulnv/instagram-reels-scraper) | Extract video data, engagement metrics, and audio info from Instagram Reels |
| [Facebook Profile Scraper](https://apify.com/vulnv/facebook-profile-scraper) | Scrape public Facebook profile information and post data |
| [TikTok Scraper](https://apify.com/vulnv/tiktok-scraper) | Extract video data, engagement metrics, and creator info from TikTok |
| [LinkedIn Profile Scraper](https://apify.com/vulnv/linkedin-profile-scraper) | Scrape public LinkedIn profile data without login |
| [LinkedIn Posts Scraper](https://apify.com/vulnv/linkedin-posts-scraper) | Extract LinkedIn post content, engagement metrics, and comments |
| [Reddit Posts Scraper](https://apify.com/vulnv/reddit-posts-scraper) | Collect Reddit posts and comments from any subreddit |

🔍 Explore the full collection at 🌐 [Vulnv's Apify Actors](https://apify.com/vulnv)

📧 For support or collaborations, reach out at apify@vulnv.com.

# Actor input Schema

## `urls` (type: `array`):

Enter the Instagram Post URLs you want to scrape data from.

## Actor input object example

```json
{
  "urls": [
    "https://www.instagram.com/p/Cuf4s0MNqNr",
    "https://www.instagram.com/p/DP861NijuwE"
  ]
}
```

# Actor output Schema

## `results` (type: `string`):

Default dataset items containing the scraped Instagram post records.

# 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 = {
    "urls": [
        "https://www.instagram.com/p/Cuf4s0MNqNr",
        "https://www.instagram.com/p/DP861NijuwE"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("vulnv/instagram-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 = { "urls": [
        "https://www.instagram.com/p/Cuf4s0MNqNr",
        "https://www.instagram.com/p/DP861NijuwE",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("vulnv/instagram-posts-scraper").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 '{
  "urls": [
    "https://www.instagram.com/p/Cuf4s0MNqNr",
    "https://www.instagram.com/p/DP861NijuwE"
  ]
}' |
apify call vulnv/instagram-posts-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,vulnv/instagram-posts-scraper"
        }
    }
}
```

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/kc5h8zntx8GGKxEwu/builds/Mkj2NxFOABEOZjbMU/openapi.json
