Skip to main content
All CollectionsApify Store
How to download photos from an Instagram profile
How to download photos from an Instagram profile

Learn how to scrape Instagram profiles and download photos from posts using Actors from Apify Store.

Alina Burova avatar
Written by Alina Burova
Updated over 10 months ago

Instagram Post Scraper allows you to extract public post data from Instagram and download it in various formats like Excel, HTML, XML, CSV, and JSON. However, if you're looking to download the actual photo files directly, this guide has you covered. Follow these steps to effortlessly download the photos from an Instagram profile using our Dataset Image Downloader & Uploader Actor from Apify Store.

1. Use Instagram Post Scraper

Start by using Instagram Post Scraper. This tool allows you to extract data from Instagram profiles, including text, hashtags, mentions, comments, image URLs, likes, locations, and metadata.

2. Insert the username or URL

Once you open Instagram Post Scraper, insert the username or URL of the profile from which you want to retrieve posts. Make sure you have the correct profile details.

3. Run the scraper

Start the scraper to collect data from the specified Instagram profile. The scraper will fetch the relevant posts, including image URLs.

4. Copy the dataset ID

After running the scraper, locate the dataset where the scraped data is stored. Copy the ID of this dataset. You’ll need it in the next steps.

5. Use the Dataset Image Downloader & Uploader Actor

Next, open Dataset Image Downloader & Uploader. This Actor is designed to handle image data from datasets.

6. Paste the dataset ID and configure the Actor

In the Actor, paste the previously copied dataset ID. Additionally, provide the displayUrl as a path to the image URLs within the dataset.

7. Run the Actor

Start Dataset Image Downloader & Uploader. It will process the dataset, extract photos, and prepare them for download.

8. Open the key-value store

After the run has successfully finished, navigate to the storage section, and select the key-value store tab. Look for the images-archive row associated with your dataset.

9. Download and unzip

Click the download button in the images-archive row. This will download a zip file containing all the images. Unzip the file to access the individual image files.

Can I get Instagram images from private profiles that are available only after login?

In theory, yes. But this is not what our scraper can do. Please keep in mind that our scrapers do not support logging in to Instagram, so there are some limits on what you can and cannot scrape. Our scraper is capable of getting around those limitations (such as using proxies or Google Search results) but only to an extent.

If you check the Instagram website in an incognito browser window, you’ll quickly find that there's very little data that you can view and access freely without logging in.

Can I create my own Instagram scraper on your platform?

Yes, you can build your own Instagram scraper on the Apify platform in Python or JavaScript — either just for deployment or for full production — and take advantage of built-in proxies, infrastructure, scheduling, and storage. If the platform seems too limiting, you can also make good use of our free web scraping library.


While it is possible to create a scraper that can automatically log in to Instagram to access this data, doing so is risky because it can lead to Instagram banning your account. Sure, you could create a fake Instagram account and use that instead, but this action violates Instagram's terms and conditions. We do not recommend this approach, and none of our scrapers support it.

Did this answer your question?