인스타그램 크롤링 — 프로필·게시물·릴스·댓글 수집
로그인 없이 인스타그램 크롤링. 아이디나 URL로 프로필, 게시물, 릴스, 댓글과 해시태그, 반응 수를 수집합니다. JSON, CSV.
주요 기능
로그인도 Instagram 계정도 필요 없음 — 공개 프로필, 게시물, 릴스만 대상
프로필: 소개, 전체 이름, 팔로워·팔로잉 수, 인증·비공개 여부, 소개 링크, 프로필 사진
게시물, 릴스, 캐러셀의 캡션, 좋아요 수, 댓글 수. 프로필의 릴스 탭에서 읽은 릴스에는 재생 수도 포함
캡션에서 해시태그와 멘션을 뽑아 깔끔한 배열로 정리
모든 게시물에 Instagram 자체 주제 태그, 태그된 사용자, 공동 작성자, 위치 포함
캐러셀 각 항목의 이미지·영상 링크와, 소리가 있는 영상마다 오디오 전용 트랙
선택 사항으로 댓글: 작성자, 본문, 좋아요 수, 답글 수, 시각 — 게시물당 최대 500개
프로필별 상한과 엄격한 요청 상한으로 실행 규모를 예측 가능하게
활용 사례
- 인플루언서·크리에이터 조사 — 참여 지표, 공동 작성자, 태그하는 계정
- 선택한 계정에 대한 브랜드·경쟁사 모니터링
- Instagram 자체 주제 태그 기반의 분류와 트렌드 분석
- 게시물과 릴스의 댓글·감성 분석
- 릴스의 오디오 전용 트랙을 음성 인식으로 전달
- RAG와 LLM 파이프라인용 소셜 데이터셋
입력 파라미터
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
startUrls | array | 선택 | 프로필, 게시물, 릴스 주소. 이것 또는 usernames 중 하나를 입력 |
usernames | array | 선택 | 프로필 이름. @는 있어도 없어도 됩니다 |
maxPostsPerProfile | integer | 선택 | 프로필마다 전체를 읽을 게시물과 릴스 수. 각각 따로 셉니다(기본 24) |
includeReels | boolean | 선택 | 각 프로필의 릴스 탭도 읽기 — 재생 수가 포함되는 유일한 읽기 방식(기본 켜짐) |
includeComments | boolean | 선택 | 각 게시물의 댓글을 아래 상한까지 읽기(기본 꺼짐) |
maxCommentsPerPost | integer | 선택 | 게시물 또는 릴스당 저장할 댓글 수, 0–500(기본 24) |
postsPerPage | integer | 선택 | 한 페이지에서 요청할 게시물 수(기본 12) |
maxConcurrency | integer | 선택 | 동시에 실행할 요청 수(기본 3) |
maxRequestsPerCrawl | integer | 선택 | 이 요청 수에 도달하면 중지. 비워 두면 제한 없음 |
proxy | object | 선택 | Apify Proxy, 기본값은 주거용 — Instagram은 로그인하지 않은 방문자에게도 주거용 주소에서 훨씬 잘 응답합니다 |
출력 예시
1{
2 "type": "post",
3 "source": {
4 "id": "instagram",
5 "canonicalUrl": "https://www.instagram.com/reel/DdRyQxKteC1/",
6 "username": "astro_jessica"
7 },
8 "kind": "reel",
9 "id": "3986188199829823669",
10 "shortcode": "DdRyQxKteC1",
11 "owner": {
12 "id": "4092263381",
13 "username": "astro_jessica",
14 "fullName": "Jessica Meir",
15 "isVerified": true
16 },
17 "takenAt": "2026-09-14T18:58:07.000Z",
18 "caption": "Volume up and get your groove on! A bit of weekend dancing on the @iss to start your week off right. …",
19 "hashtags": [],
20 "mentions": [
21 "iss"
22 ],
23 "format": "video",
24 "productType": "clips",
25 "isVideo": true,
26 "isReel": true,
27 "hasAudio": true,
28 "likeCount": 251630,
29 "commentCount": 2690,
30 "medias": [
31 {
32 "type": "Image",
33 "url": "https://…jpg",
34 "width": 892,
35 "height": 1584
36 },
37 {
38 "type": "Video",
39 "videoUrl": "https://…mp4",
40 "width": 892,
41 "height": 1584,
42 "audioUrl": "https://…mp4"
43 }
44 ],
45 "audioTitle": "Original audio",
46 "coauthors": [
47 {
48 "username": "nasa",
49 "id": "528817151",
50 "fullName": "NASA"
51 },
52 {
53 "username": "iss",
54 "id": "953293389",
55 "fullName": "International Space Station"
56 },
57 {
58 "username": "astro_anil",
59 "id": "50101577629",
60 "fullName": "Anil | Astronaut Space Doctor"
61 }
62 ],
63 "topics": [
64 "international space station",
65 "zero gravity",
66 "samantha cristoforetti",
67 "iss life",
68 "space station interior"
69 ],
70 "location": {
71 "id": "1783641135097024",
72 "name": "International Space Station"
73 },
74 "commentsRead": 24,
75 "comments": [
76 {
77 "id": "18000000000000000",
78 "authorUsername": "example_user",
79 "authorId": "10000000000",
80 "authorIsVerified": false,
81 "text": "Microgravity jazzercise 💃",
82 "likeCount": 0,
83 "createdAt": "2026-10-20T01:38:03.000Z"
84 }
85 ],
86 "scrapedAt": "2026-10-20T01:52:17.665Z"
87}
요금
이벤트당 과금: 저장한 게시물 또는 릴스 하나당 한 번, 저장한 프로필 하나당 한 번, 게시물과 함께 저장한 댓글 하나당 한 번 청구됩니다. Actor가 읽지 못한 레코드에는 요금이 부과되지 않습니다.
팁
프로필 하나로 시작하세요. maxPostsPerProfile을 낮게 잡고 레코드를 확인한 뒤 규모를 키우세요. 릴스 탭은 켜 두세요. 재생 수가 포함되는 유일한 읽기 방식입니다. 끄면 실행은 작아지지만 그만큼 재생 수를 얻지 못합니다. 필요하지 않다면 댓글은 끄세요. 저장된 댓글 하나가 한 번의 과금이며, maxCommentsPerPost가 게시물당 가져오는 댓글 수를 제한합니다. 릴스에서 한 말이 궁금한가요? Instagram 스크립트 스크레이퍼가 같은 계정의 릴스를 타임스탬프가 붙은 텍스트로 바꿔 줍니다.