Baixar posts do Instagram usando Python
Neste artigo desenvolveremos um script capaz de fazer o download de posts do Instagram via terminal usando Python.
[ Hits: 11.731 ]
Por: Fábio Berbert de Paula em 15/12/2021 | Blog: https://fabio.automatizando.dev
#!/usr/bin/env python3
# módulos necessários
import instaloader
import re
import os
import sys
from getpass import getpass
# verificar se a URL foi informada
try:
url = sys.argv[1]
except IndexError:
print(
"Forma de uso:\n\n", sys.argv[0],
"URL\n\nInforme uma URL válida\n\n"
)
sys.exit()
# diretório de download
downloadDir = '/home/fabio/Downloads'
os.chdir(downloadDir)
loader = instaloader.Instaloader(
download_pictures=True,
download_videos=True,
download_video_thumbnails=False,
download_geotags=False,
download_comments=False,
save_metadata=False,
compress_json=False,
filename_pattern='{profile}_{mediaid}'
)
# o login é opcional, necessário somente no
# caso de download de posts de contas privadas
# comente as próximas 3 linhas caso esteja
# fazendo download de posts de contas públicas
username = input('Usuário: ')
password = getpass('Senha: ')
loader.login(username,password)
# extrair "short_code" da URL
# exemplo: https://www.instagram.com/p/CCfeQV-AssF/
expr = r'\/p\/([^\/]*)/'
found = re.search(expr, url)
if found:
print("Baixando ", found.group(1), "...")
post = instaloader.Post.from_shortcode(loader.context, found.group(1))
loader.download_post(post, ".")
Extracttext - como extrair texto de uma área selecionada da tela
Edital de política de contribuição de artigos
Corretor Ortográfico no Vim - Guia definitivo
Paginação de resultados em PHP/MySQL
Python - Usando requests anônimos através da rede Tor
Estudantes de computação e o Linux/Unix
Onde os iniciantes devem buscar soluções para os seus problemas
Ubuntu 10.04 no Notebook Acer 5532
Teste de distribuições GNU/Linux em pendrive
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como implementar Raid (0, 1, 5, 6, 10 e 50)
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
diferença entre o Tor baixado pelo Gerenciador de Aplicativos e o Tor ... (9)
Monte o Google Drive como uma pasta remota no Linux [RESOLVIDO] (3)
Compartilhar ZEBRA ZD220 na rede (1)
Debian Stable travado em atualizações: dist-upgrade não resolve [RESOL... (12)









