;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Robôs impulsionaram metade dos tuites pró-Bolsonaro no início da campanha

 Bolsonaro e Lula no primeiro dia de campanha, em 16 de agosto -  MIGUEL SCHINCARIOL E MAURO PIMENTEL / AFP
Bolsonaro e Lula no primeiro dia de campanha, em 16 de agosto Imagem: MIGUEL SCHINCARIOL E MAURO PIMENTEL / AFP

Do UOL, em São Paulo

27/08/2022 09h58Atualizada em 27/08/2022 17h00

Apoiadores do presidente Jair Bolsonaro (PL) e do ex-presidente Luiz Inácio Lula da Silva utilizaram bots (robôs) para impulsionar seus candidatos no Twitter no primeiro dia de campanha. O uso da automação foi maior entre bolsonaristas: 50% dos retuites, contra 25% entre os apoiadores do petista. A prática não é permitida por lei.

O comportamento foi identificado pela ferramenta Pegabot, algoritmo desenvolvido pelo ITS-Rio (Instituto de Tecnologia e Sociedade do Rio de Janeiro), formado por pesquisadores de universidades como UERJ (Universidade Estadual do Rio de Janeiro), PUC-Rio (Pontifícia Universidade Católica do Rio) e MIT (Instituto de Tecnologia de Massachusetts) Media Lab, que reou o levantamento com exclusividade ao UOL.

A campanha começou oficialmente em 16 de agosto. Na ocasião, o Pegabot analisou no Twitter o comportamento das tags que tiveram destaque naquele dia: #Vote22Bolsonaro e #LulaPresidente13.

"Essas hashtags mobilizaram um volume relevante de compartilhamentos em um curto espaço de tempo", diz o ITS-Rio sobre os bots.

Como funcionam os robôs e o que o Pegabot descobriu? Esses robôs funcionam retuitando de forma automática e em sequência posts de pessoas reais que utilizam uma determinada hashtag. Isso faz com que ela apareça em mais postagens, elevando seu desempenho no Twitter e figurando entre os assuntos mais comentado na rede social.

O instituto explica que, em média, um mesmo usuário mencionou até quatro vezes as hashtags #Vote22Bolsonaro e #LulaPresidente13. Para o levantamento, foram selecionados os usuários que publicaram pelo menos cinco vezes, "e analisamos a existência de comportamento automatizado entre eles usando o Pegabot".

No primeiro dia de campanha, os bolsonaristas foram responsáveis por 53,5% dos 125,3 mil tuítes analisados, contra 46,5% de petistas. Parte da vantagem se deve à atuação de robôs, maior entre os partidários do presidente.

Qual foi a conclusão? A conclusão é que 49,8% dos 18.926 usuários bolsonaristas analisados "apresentaram probabilidade de comportamento automatizado com valor igual ou maior a 70%", respondendo "pelo compartilhamento de 43.908 tuítes e retuítes, 65,4% do volume total de tuítes coletados [67,1 mil]".

Entre os petistas, 24,7% dos 22.286 usuários avaliados apresentaram comportamento automatizado, compartilhando 26.816 tuítes e retuítes, ou 46% do total coletado [58,2 mil]".

Alguns usuários chegaram a compartilhar tuítes e retuítes mais de 200 vezes."
Instituto de Tecnologia e Sociedade do Rio de Janeiro

Um único robô bolsonarista chegou a realizar 434 publicações, enquanto um robô petista fez o mesmo 359 vezes.

Como o Pegabot encontra os robôs no Twitter? Responsável pelo departamento de Democracia e Mídias no ITS-Rio, Karina Santos conta que o instituto monitora hashtags diariamente, "identificando quais despontam de forma potencialmente suspeitas", como foi o caso de #Vote22Bolsonaro e #LulaPresidente13.

"A velocidade de compartilhamento e o tipo de engajamento em torno de um tema indica uma possibilidade de comportamento inautêntico", afirma. "O algoritmo analisa características do perfil, o tipo de engajamento na plataforma, linguagem utilizada na conta e a rede de seguidores ao redor do usuário."

Por que o uso de robôs é perigoso? A especialista alerta que, nas redes sociais, a inteligência artificial sem transparência "pode ser usada para inflar um discurso específico, construir e espalhar narrativas, criar bolhas de conteúdo e disseminar desinformação".

Vemos um forte uso de bots pra viralizar informações com o objetivo de enganar a opinião pública, falsificando uma sensação de importância e apoio. São utilizados para que um conteúdo pareça ter sido comentado por todos sem o ser, para descredibilizar determinadas personalidades ou enaltecer outras figuras."
Karina Santos, do ITS-Rio

O que diz a lei? A lei eleitoral só permite que conteúdos sejam impulsionados nas redes sociais se o autor pagar para que a plataforma, como o Twitter, espalhe a informação. Neste caso, aparece o aviso de "conteúdo patrocinado".

Já o uso de robôs é proibido, afirma o advogado especialista em direito público Roberto Piccelli, que cita a lei 9.504/97, alterada em 2017. Um dos trechos diz que que "Não é itida a veiculação de conteúdos de cunho eleitoral mediante cadastro de usuário de aplicação de internet com a intenção de falsear identidade".

Em outro, afirma que "é vedada a utilização de impulsionamento de conteúdos e ferramentas digitais não disponibilizadas pelo provedor da aplicação de internet".

E se o responsável pelo robô for pego? O TSE (Tribunal Superior Eleitoral) só interfere no assunto se receber alguma denúncia formal "de qualquer cidadão, incluindo dos adversários", explica Piccelli, que estuda a relação entre Constituição e mídias digitais.

A lei prevê multa de R$ 5.000 a R$ 30 mil ao autor, caso identificado, e também ao candidato beneficiado "quando comprovado seu prévio conhecimento". Já a rede social estará sujeita a multa apenas se descumprir ordem judicial para retirar o conteúdo do ar.

"Por mais que possamos supor que a iniciativa tenha partido de usuários sem o conhecimento da campanha, o uso de robôs fere a lógica do controle das despesas eleitorais", diz o advogado. "Afinal de contas, é uma contribuição inoficiosa à campanha do candidato beneficiado, provavelmente de uma fonte ilícita."

O que diz a campanha dos candidatos? Procuradas, as campanhas dos candidatos não responderam até a publicação desta reportagem.

Segundo o Twitter, ferramentas de terceiros que "am informações públicas das contas" colhem "dados muito limitados para essa análise".

A plataforma afirma que "o TSE tem um canal direto e permanente de contato com o Twitter para discutir iniciativas, melhores práticas e ações necessárias para proteger a integridade das conversas sobre as eleições".

"Este é um trabalho adicional à imposição regular e frequente de nossas regras, incluindo as para combater spam e manipulação da plataforma, e à detecção cada vez mais proativa de potenciais violações a elas", diz.

Segundo dados divulgados recentemente pela plataforma, dos 238 milhões de perfis ativos na rede, 5% são automatizados. O dado é contestado pelo bilionário Elon Musk, que decidiu cancelar a compra da plataforma ao alegar falta de transparência do Twitter sobre perfis falsos.

Karina defende uma regulação ao estilo "follow the money", expressão em inglês que significa seguir o dinheiro de quem financia essas campanhas coordenadas "porque o mercado da desinformação no Brasil é muito bem estruturado".

"Em cenário eleitoral, esse uso pode ter um impacto direto na decisão de voto do eleitor, o que é muito preocupante."