[Python] 파이썬으로 인스타그램 사진, 동영상 다운받기

개요

파이썬으로 연예인 인스타그램의 사진, 동영상, 글 내용을 다운받는 방법입니다.

 

원래 셀레늄으로 인스타그램 스크랩하는 방식을 이용하려고 했는데, instaloader라고 하는 진짜 너무 편한 라이브러리가 이미 있더라구요. 커맨드라인에서 실행할 수도 있고, 파이썬으로 라이브러리를 불러와서 사용할 수도 있습니다.

 

정말 간단합니다.

 

instaloader

홈페이지 : instaloader.github.io/

Github : github.com/instaloader/instaloader

 

 

방법

1) 설치

커맨드라인에서 설치합니다.

pip install instaloader

 

2) 실행

커맨드라인에서 실행합니다.

 

예시1 : 아이유 인스타그램(#dlwlrma) 안의 게시물을 모두 다운받고 싶다. (저화질)

instaloader dlwlrma

 

예시2 : 아이유 인스타그램(#dlwlrma) 안의 게시물을 모두 다운받고 싶다. (고화질 - 로그인필요)

-> 비밀번호 입력 필요

instaloader --login="본인아이디" dlwlrma

 

예시3 : 아이유 인스타그램(#dlwlrma) 안의 9월 1일 이후 게시물을 모두 다운받고 싶다. (고화질)

 

2023.09.01 내용 추가 : date_local 필터가 안 먹힙니다. date_local 대신 date_utc를 사용하세요..

instaloader --post-filter="date_local >= datetime(2020, 9, 1)"  --login="본인아이디" dlwlrma

 

예시4 : 리스트(트와이스, 수지, 로제, 지드래곤)에 있는 모든 사람들의 인스타에 들어가,

 - 2020년 9월 1일 이후에 업로드된 : --post-filter=옵션

 - 동영상 제외하고 사진만 : --no-vidoes 옵션

 - 특정 폴더 안에다가 : --dirname-pattern= 이하

 - 날짜/계정 구조의 폴더를 만들고, 그 안에 날짜_아이디 형식으로 저장 :  --filename-pattern= 이하

을 하고싶다면

 

2023.09.01 내용 추가 : date_local 필터가 안 먹힙니다. date_local 대신 date_utc를 사용하세요..

import os

insta_list = {"twicetagram":'트와이스', "skuukzky":"수지", "roses_are_rosie":"블랙핑크 로제", "xxxibgdrgn": "지드래곤"}

for account in insta_list:
    com = 'instaloader --fast-update --post-filter="date_local >= datetime(2020, 9, 1)"  --login="본인아이디" insta_id --dirname-pattern=/workspace/naver_blog/data/insta --no-videos --filename-pattern={date_local:%Y-%m-%d}/{profile}/{date_local}_{profile}'
    com=com.replace("insta_id", account)
    os.system(com) #파이썬에서 스크립트 실행

 

 

 

예시5 : #귀여운 이라는 해쉬태그를 달고 있는 게시 검색하여 인기 게시물 다운

 

from instaloader import *

hashtag = instaloader.Hashtag.from_name(L.context, "귀여운")
posts = hashtag.get_top_posts()

for post in posts:
   L.download_post(post, target='귀여운폴더')

 

 

기타 수백가지 응용 방법 존재하며, 자세한 내용은 공식 홈페이지 참조 바랍니다.

 

댓글

Designed by JB FACTORY