tootsuite

Stars and mentions

Last 30 days, Oct 5 – Nov 3

GitHub stars0
mentions1
01234Oct 5Oct 19Nov 3
UTC days · repositories tootsuite owns0 repositories

Package downloads

No package download history available yet.

Top repositories

tootsuite’s repositories ranked by new stars, as on trending.

Loading

Contributes to

Repositories outside tootsuite’s account where tootsuite opened or reviewed pull requests in the past 365 days.

Who noticed tootsuite

Everyone who starred or forked tootsuite’s repositories since the archive began in 2011.

Notable accounts

Ordered by the stars their own repositories have received.

Biggest fans

Accounts that starred the most of these repositories.

Breakout weeks

Each repository’s best week of new stars, with the release published around it.

Mentions

1post
Nov 40 posts
  1. Como driblar o bloqueio do Instagram nas protestas Instagram offline nas protestas: como driblar o bloqueio e proteger seu conteúdo Introdução Em menos de 24 h, o Instagram foi tirado do ar em várias cidades durante as últimas manifestações. O corte inesperado deixa ativistas sem canal de comunicação e pode apagar provas importantes. Se você já perdeu acesso a fotos ou vídeos no meio de um protesto, este guia prático mostra como fazer backup imediato, alternativas descentralizadas e scripts simples para manter a comunicação viva, mesmo quando a Meta decide fechar o serviço. 1. Por que o Instagram é bloqueado nas ruas? | Motivo oficial | Como costuma acontecer | Impacto real | |----------------|------------------------|--------------| | “Segurança pública” | Ordens judiciais ou ordens executivas que obrigam provedores a bloquear IPs ou domínios do Instagram | Desativação total ou parcial da rede social | | “Prevenção de crimes” | Bloqueio de tráfego via Deep Packet Inspection (DPI) ou bloqueio de DNS | Usuários ficam sem acesso a fotos, lives e mensagens diretas | | “Censura política” | Pressão de autoridades para silenciar organizadores | Redução da visibilidade de protestos e perda de evidências digitais | 2. Checklist rápido de segurança antes de um blackout 1. Ative a verificação em duas etapas (2FA) no Instagram. 2. Instale um gerenciador de senhas (Bitwarden, 1Password) e exporte o vault para um USB criptografado. 3. Configure o download automático das suas fotos usando o script Python abaixo (ver seção 3). 4. Instale aplicativos descentralizados (Signal, Mastodon) e adicione contatos críticos. 5. Teste a VPN (WireGuard ou OpenVPN) para garantir que você pode contornar bloqueios de DNS. 3. Como fazer backup de fotos e vídeos antes do corte 3.1 Script Python “insta‑backup.py” (usa a API não oficial) #!/usr/bin/env python3 import os, json, requests from getpass import getpass # 1️⃣ Credenciais username = input("Usuário Instagram: ") password = getpass("Senha: ") # 2️⃣ Login (requisição simples) login_url = "https://www.instagram.com/accounts/login/ajax/" session = requests.Session() session.headers.update({ "User-Agent": "Mozilla/5.0", "X-Requested-With": "XMLHttpRequest", "Referer": "https://www.instagram.com/accounts/login/", }) login_resp = session.post(login_url, data={"username": username, "enc_password": f"#PWD_INSTAGRAM_BROWSER:0:&:{password}"}, allow_redirects=True) if login_resp.status_code != 200 or not login_resp.json().get("authenticated"): print("❌ Falha no login") exit(1) print("✅ Logado") # 3️⃣ Obtém o ID do usuário profile_url = f"https://www.instagram.com/{username}/?__a=1" profile = session.get(profile_url).json() user_id = profile["graphql"]["user"]["id"] # 4️⃣ Cria pasta de backup backup_dir = f"./backup_{username}" os.makedirs(backup_dir, exist_ok=True) # 5️⃣ Baixa as últimas N postagens (ex.: 30) def download_media(shortcode): media_url = f"https://www.instagram.com/p/{shortcode}/?__a=1" media = session.get(media_url).json() typ = media["graphql"]["shortcode_media"]["__typename"] if typ == "GraphImage": url = media["graphql"]["shortcode_media"]["display_url"] elif typ == "GraphVideo": url = media["graphql"]["shortcode_media"]["video_url"] else: # carrossel urls = [edge["node"]["display_url"] for edge in media["graphql"]["shortcode_media"]["edge_sidecar_to_children"]["edges"]] for i, u in enumerate(urls, 1): r = session.get(u) ext = u.split("?")[0].split(".")[-1] open(f"{backup_dir}/{shortcode}_{i}.{ext}", "wb").write(r.content) return r = session.get(url) ext = url.split("?")[0].split(".")[-1] open(f"{backup_dir}/{shortcode}.{ext}", "wb").write(r.content) # Loop de páginas end_cursor = "" while len(os.listdir(backup_dir)) < 30: query = f"""{{"id":"{user_id}","first":12,"after":"{end_cursor}"}}""" resp = session.get( f"https://www.instagram.com/graphql/query/", params={"query_hash":"58b6785bea111c67129decbe6a448951","variables":query}, ).json() edges = resp["data"]["user"]["edge_owner_to_timeline_media"]["edges"] for edge in edges: shortcode = edge["node"]["shortcode"] download_media(shortcode) page_info = resp["data"]["user"]["edge_owner_to_timeline_media"]["page_info"] if not page_info["has_next_page"]: break end_cursor = page_info["end_cursor"] print(f"✅ Backup concluído em {backup_dir}") Como usar chmod +x insta-backup.py ./insta-backup.py O script baixa as 30 postagens mais recentes (imagens ou vídeos) e salva em ./backup_seunome. Execute-o antes de perceber qualquer interrupção. 3.2 Ferramenta de linha de comando “instagram‑dl” (alternativa rápida) pip install instagram-scraper instagram-scraper your_user --media-types image,video --maximum 50 --destination ./instagram_backup 4. Alternativas descentralizadas para continuar a comunicação | Plataforma | Tipo | Como instalar | Como convidar contatos | |------------|------|---------------|------------------------| | Signal | Mensagens end‑to‑end encrypted | brew install signal (macOS) ou Play Store | Compartilhe o QR code da sua conta | | Matrix (Element) | Chat federado | docker run -d -p 8008:8008 vectorim/element-web | Envie seu @user:servidor.org | | Mastodon | Micro‑blogging federado (ActivityPub) | mastodon.social ou instale seu nó | Siga @seunome@mastodon.social | | IPFS + Textile | Armazenamento de arquivos distribuído | ipfs init && ipfs daemon | Compartilhe o CID do diretório de fotos | Passo a passo rápido para criar um nó Mastodon pessoal (Linux) # 1️⃣ Instala dependências sudo apt-get update && sudo apt-get install -y git curl gnupg2 postgresql redis-server nginx # 2️⃣ Clona o código git clone https://github.com/tootsuite/mastodon.git cd mastodon git checkout $(git tag | sort -V | tail -1) # última versão # 3️⃣ Instala gems e pacotes bundle install && yarn install --production # 4️⃣ Configura o banco RAILS_ENV=production bundle exec rails db:setup # 5️⃣ Inicia serviços systemctl start redis systemctl start postgresql RAILS_ENV=production bundle exec rails s -b 0.0.0.0 Depois de rodar, acesse http://seu_ip:3000 e crie a conta. Agora você tem um micro‑blog que não pode ser apagado por nenhum provedor de internet. 5. Casos reais de migração durante bloqueios | País / Evento | Bloqueio | Alternativa adotada | Resultado | |---------------|----------|---------------------|-----------| | Irã (2022) | Instagram e Twitter bloqueados via DPI | Signal + Telegram + Mastodon auto‑hospedado | 85 % das comunicações migraram em 48 h | | Hong Kong (2020) | Instagram “blackout” durante protestos | Instalação de VPN WireGuard + backup de mídia via script | Evidências visuais preservadas e compartilhadas no GitHub | | Brasil (2023) | Bloqueio parcial nas regiões Norte | Uso de redes Mesh (Babel) + IPFS para fotos | Comunidade conseguiu publicar vídeos em tempo real sem interrupção | 6. Guia rápido de contorno de bloqueio de DNS 1. Altere o DNS para 1.1.1.1 (Cloudflare) ou 9.9.9.9 (Quad9). sudo bash -c 'echo "nameserver 1.1.1.1" > /etc/resolv.conf' 2. Instale o DNSCrypt para criptografar consultas. sudo apt-get install dnscrypt-proxy sudo systemctl enable dnscrypt-proxy sudo systemctl start dnscrypt-proxy 3. Teste o acesso: dig +short instagram.com @ --- Herramienta mencionada: GitHub Copilot

Achievements

Awards earned by the repositories tootsuite owns. Select an award to embed its badge.

No awards yet

Repositories earn awards by reaching the top three in a completed trending day or week.

A repository earns an award for finishing first, second or third in a completed trending day or week, ranked by new stars, new forks or pull request authors. Awards follow a repository through renames and transfers and count toward its current owner. Weeks run Monday to Sunday, UTC.