Pular para o conteúdo principal

Compartilhe

Conteúdo que protege.

 Open Source Intelligence (OSINT) #osintbrasil Audiência que pensa como hacker. Conteúdo que protege. O #blog OSINTBRASIL é referência nacional em conteúdos sobre tecnologias, cyber security, OSINT e privacidade digital.  Informação técnica, prática e confiável para quem vive a segurança da informação. NOSSA AUDIÊNCIA 2.5M+ Todo o período 2.992 Hoje 9.201 Ontem 161.875 Este mês 277.365 Último mês 11 MILHÕES de views nas fotos no Google Local Guides Nossas fotos ajudam milhares de pessoas a encontrar, avaliar e confiar em lugares todos os dias. osintbrasil.blogspot.com TECNOLOGIA • CYBER SECURITY • OSINT • PRIVACIDADE DIGITAL CONTEÚDO TÉCNICO. IMPACTO REAL. Apoiamos demais colegas, empresas e movimentos que praticam o osint a cyber security e afins

floriandiud/facebook-group-members-scraper

Navegação de arquivos do repositório

Raspador de membros de grupos do Facebook

Script para extrair membros de grupos do Facebook e exportá-los para um arquivo CSV. Este extrator de membros do Grupo do Facebook funciona no navegador, sem instalar extensão ou usar proxy. Basta copiar e colar o script no console do Chrome.

Como executar o script Extrator de Grupo do Facebook

  1. Vá para uma página de grupo do Facebook
  2. Abra o Console do desenvolvedor do Chrome
  3. Copiar Cole o seguinte código no console. Será adicionado um botão "Baixar 0 membros"
  4. Clique na guia "Pessoas" da página do grupo
  5. Role para carregar novos membros que serão pegos pelo script. O contador de botões aumenta com novos membros eliminados.
  6. Feito isso, clique no botão "Baixar membros X" para baixar o arquivo CSV gerado

Leia nosso guia passo a passo para extrair membros de grupos do Facebook e encontrar seus perfis no LinkedIn

dist/main.min.js

function exportToCsv(e,t){for(var n="",o=0;o<t.length;o++)n+=function(e){for(var t="",n=0;n<e.length;n++){var o=null===e[n]||void 0===e[n]?"":e[n].toString(),o=(o=e[n]instanceof Date?e[n].toLocaleString():o).replace(/"/g,'""');0<n&&(t+=","),t+=o=0<=o.search(/("|,|\n)/g)?'"'+o+'"':o}return t+"\n"}(t[o]);var r=new Blob([n],{type:"text/csv;charset=utf-8;"}),i=document.createElement("a");void 0!==i.download&&(r=URL.createObjectURL(r),i.setAttribute("href",r),i.setAttribute("download",e),document.body.appendChild(i),i.click(),document.body.removeChild(i))}function buildCTABtn(){var e=document.createElement("div"),t=(e.setAttribute("style",["position: fixed;","top: 0;","left: 0;","z-index: 10;","width: 100%;","height: 100%;","pointer-events: none;"].join("")),document.createElement("div")),n=(t.setAttribute("style",["position: absolute;","bottom: 30px;","right: 130px;","color: white;","min-width: 150px;","background: var(--primary-button-background);","border-radius: var(--button-corner-radius);","padding: 0px 12px;","cursor: pointer;","font-weight:600;","font-size:15px;","display: inline-flex;","pointer-events: auto;","height: 36px;","align-items: center;","justify-content: center;"].join("")),document.createTextNode("Download ")),o=document.createElement("span"),r=(o.setAttribute("id","fb-group-scraper-number-tracker"),o.textContent="0",document.createTextNode(" members"));return t.appendChild(n),t.appendChild(o),t.appendChild(r),t.addEventListener("click",function(){var e=(new Date).toISOString();exportToCsv("groupMemberExport-".concat(e,".csv"),window.members_list)}),e.appendChild(t),document.body.appendChild(e),e}function processResponse(e){var t,n;if(null!==(t=null==e?void 0:e.data)&&void 0!==t&&t.group)o=e.data.group;else{if("Group"!==(null===(t=null===(t=null==e?void 0:e.data)||void 0===t?void 0:t.node)||void 0===t?void 0:t.__typename))return;o=e.data.node}if(null!==(t=null==o?void 0:o.new_members)&&void 0!==t&&t.edges)n=o.new_members.edges;else if(null!==(e=null==o?void 0:o.new_forum_members)&&void 0!==e&&e.edges)n=o.new_forum_members.edges;else{if(null===(t=null==o?void 0:o.search_results)||void 0===t||!t.edges)return;n=o.search_results.edges}var e=n.map(function(e){var t=e.node,n=t.id,o=t.name,r=t.bio_text,i=t.url,s=t.profile_picture,t=t.__isProfile,d=(null===(d=null==e?void 0:e.join_status_text)||void 0===d?void 0:d.text)||(null===(d=null===(d=null==e?void 0:e.membership)||void 0===d?void 0:d.join_status_text)||void 0===d?void 0:d.text),e=null===(e=e.node.group_membership)||void 0===e?void 0:e.associated_group.id;return[n,o,i,(null==r?void 0:r.text)||"",(null==s?void 0:s.uri)||"",e,d||"",t]}),o=((t=window.members_list).push.apply(t,e),document.getElementById("fb-group-scraper-number-tracker"));o&&(o.textContent=window.members_list.length.toString())}function parseResponse(e){var n=[];try{n.push(JSON.parse(e))}catch(t){var o=e.split("\n");if(o.length<=1)return void console.error("Fail to parse API response",t);for(var r=0;r<o.length;r++){var i=o[r];try{n.push(JSON.parse(i))}catch(e){console.error("Fail to parse API response",t)}}}for(var t=0;t<n.length;t++)processResponse(n[t])}function main(){buildCTABtn();var e=XMLHttpRequest.prototype.send;XMLHttpRequest.prototype.send=function(){this.addEventListener("readystatechange",function(){this.responseURL.includes("/api/graphql/")&&4===this.readyState&&parseResponse(this.responseText)},!1),e.apply(this,arguments)}}window.members_list=window.members_list||[["Profile Id","Full Name","ProfileLink","Bio","Image Src","Groupe Id","Group Joining Text","Profile Type"]],main();

Campos Exportados

  • ID do perfil : identificador exclusivo do Facebook. Número de vários dígitos.
  • Nome Completo : Nome e sobrenome concatenados.
  • Link do perfil : URI do perfil no formato https://www.facebook.com/{{username}} . Quando não disponível, o padrão é https://www.facebook.com/profile.php?id={{profile_id}}
  • Bio : Texto da biografia do perfil.
  • Fonte de imagem : URI da imagem do perfil.
  • ID do grupo : identificador do grupo do Facebook. Número de vários dígitos.
  • Texto de ingresso no grupo : tempo relativo desde que o usuário ingressou no grupo. No formato: “Membro desde XX”.
  • Tipo de perfil : tipo de perfil do Facebook. "Usuário" ou "Página".

Tutorial do extrator de membros do grupo com capturas de tela

Abra o Console do desenvolvedor do Chrome

Para abrir o console do desenvolvedor do Chrome no Chrome, use o atalho de teclado Ctrl + Shift + I(no Windows) ou Cmd + Option + I(no Mac).

Ferramentas de desenvolvimento

Copiar Cole o script

Selecione a guia "Console" e copie e cole o script acima. O Facebook mostra uma mensagem de aviso no “Console” pedindo para não colar um script de fonte não confiável. É verdade! E se você não confia nesse script, pare por aqui. Leia o código-fonte para entender o que esse script faz.

Cole o roteiro

Clique na guia "Pessoas" e role para carregar novos membros

Na página do grupo, vá em “Pessoas” e vá até o final da página. Se o contador no texto do botão aumentar conforme você rola, está funcionando!

Rolagem

Exportar membros em formato CSV

Quando terminar, ou para realizar “pontos de verificação de exportação”, clique no botão “Baixar X membros”. Uma janela de download perguntará onde salvar seu arquivo CSV.

Baixar CSV

Edite e visualize seu arquivo CSV

Para carregar e visualizar o arquivo CSV , use Datablist.com ou qualquer ferramenta de planilha.

Gerencie seus leads do Facebook e enriqueça-os com o perfil do LinkedIn

Use perfis de membros do Facebook para construir um banco de dados de leads. Filtre e segmente leads para encontrar os leads mais relevantes para contato. Em seguida, enriqueça os membros do Facebook com perfil do LinkedIn e endereço de e-mail. Siga este tutorial passo a passo para coletar membros do Facebook e encontrar seus perfis no LinkedIn

Perguntas frequentes

  • Como remover o botão "Download"?
    • Basta recarregar sua página do Facebook. Qualquer código javascript adicionado no Chrome Developer Console será removido.
  • Quantos membros podem ser extraídos para um grupo?
  • Posso extrair membros de grupos diferentes ao mesmo tempo?
    • Sim. O CSV exportado contém um atributo "Group Id". Carregue os membros de um grupo do Facebook, vá para a página de outro grupo (sem recarregar sua página), carregue os membros e clique em "Baixar". Os membros extraídos de ambos os grupos estarão em um único arquivo CSV com diferentes valores de "ID do grupo".

Como construí-lo localmente

yarn install
yarn build

O script gerado está localizado em dist/main.min.js.

Comentários

Fale Conosco

Botão WhatsApp Animado
Fale conosco no WhatsApp 👋
WhatsApp

Pericia Digital

Como usar um Agente OSINT IA

Postagens mais visitadas