Bot para votação BBB 21

Compartilhe seus scripts, funções, ferramentas e programas

Moderator: Gio

Post Reply
rafinha_nego
Posts: 2
Joined: 16 Feb 2021, 10:30
GitHub: rafinhanego

Bot para votação BBB 21

Post by rafinha_nego » 16 Feb 2021, 11:25

Olá galera, este é meu primeiro tópico e gostaria de compartilhar com vocês o script para votação no BBB 21. Primeiro vou postar logo o código, mas recomendo vocês lerem logo abaixo o que levei em consideração para desenvolver o script e os problemas que encontrei no caminho. É importante que entendam a lógica que utilizei o script também. Por favor, sintam-se a vontade para discutir, corrigir ou até melhorar ainda mais o código. Sem mais delongas, vamos lá.

O CÓDIGO FONTE

Code: Select all

CoordMode, Pixel, Screen

Loop
{

Loop
{
  PixelSearch, x1, y1, 0, 0, A_ScreenWidth, A_ScreenHeight, 0x64081a, 3, Fast RGB 
  if (errorlevel = 0)
  {
	x1 := x1 - 300

	Click, %x1%, %y1%
	break

  }
}			

Loop
{
  PixelSearch, x2, y2, 0, 0, A_ScreenWidth, A_ScreenHeight, 0x4dd2d2, 3, Fast RGB 
  if (errorlevel = 0)
  {
	y2 := y2 + 20
	x2 := x2 - 150

	Click, %x2%, %y2%
	break

  }
}	

Loop
{
  PixelSearch, x3, y3, 0, 0, A_ScreenWidth, A_ScreenHeight, 0xf9411c, 3, Fast RGB 
  if (errorlevel = 0)
  {
	y3 := y3 - 95

	Click, %x3%, %y3%
	break

  }
}					

}

~^v::pause

O PONTAPÉ INICIAL

A primeira coisa que me incentivou a desenvolver este script foi o fato de a Globo ter trocado o sistema anti-bot. No ano passado( 2020 ) o site do GShow utilizava um captcha no qual o usuário deveria escolher o objeto certo dentre as 5 opções que tinha todas as vezes que fizesse uma votação. Era muito mais seguro, pois caso alguém quisesse criar algum bot, deveria tem um banco de dados com todas as imagens possíveis de escolha do captcha e, ainda, fazer um algoritmo para reconhecê-las ( algo que não era simples, pois todas as imagens continham rabiscos para dificultar esse reconhecimento.
Eu ainda não entendi muito bem o por que, mas eles trocaram o captcha para o hCaptcha alegando que agora o sistema está muito mais seguro.
Para quem não sabe, o hCaptcha funciona da mesma maneira que o captcha do Google, porém tem uma página de escolha a mais. A primeira coisa que percebi de problema no hCaptcha quando fui fazer a votação, é que ele não solicita que a
pessoa o responda para continuar o voto todas as vezes. Então, dessa forma podemos fazer vários votos rapidamente sem precisar passar pela verificação do hCapctha.

A LÓGICA

Após ter percebido esta "falha" no sistema anti-bot, o primeiro insight que tive foi fazer um script com reconhecimento de imagens na tela. Então tirei alguns prints das imagens de um participante e implementei a função imageseach. Então quando ativo, o script iria buscar pelas imagens e clicar com o mouse exatamente em cima do participante escolhido ( este foi feito especificamente para votar no Nego Di ), logo em seguida clicar no hCaptcha e, assim, realizar a votação.
O um dos problemas do imagesearch é que se executado em computadores diferente, a chance de reconhecimento das imagens é muito pequena, pois ele procura exatamente a imagem que foi cadastrada. Além disso, durante a execução, percebi
que o imagesearch é um pouco lento. Tirando estes problemas, o bot já estava criado e votando várias vezes sem o hCaptcha detectar.

Visando compartilhar o script com a comunidade, pensei em usar a função PixelSearch em vez da imageseach dessa vez, pois a busca é bem mais rápida. Agora em vez de buscar por imagens do participante alvo, o script agora iria buscar por pixels específicos na tela. Como ele iria buscar por pixels, pensei em pegar como referência um pixel que só o participante alvo( Nego Di ) teria, que no caso foi a cor vermelha de sua blusa. Após isso, apliquei um pequena equação para que quando o pixel fosse encontrado, em vez do mouse clicar no pixel, ele clicaria um pouco mais a esquerda, pois se ele clicasse em cima da foto do alvo, expandiria a foto e não daria sequência na votação.
Logo em seguida, apliquei outro PixelSearch para buscar um pixel específico do hCaptcha e, também apliquei uma pequena equação para fazer a mesma coisa ( clicar um pouco mais a esquerda do pixel ). Dessa forma o voto seria computado e iria para a tela de "Votar novamente". E da mesma forma, apliquei uma terceira função para reconhecer o botão de votar novamente e clicar em cima dele finalizando o ciclo.
Após tudo isso, coloquei todas estas funções em um Loop para ficar votando infinitamente, ou até aperta "ctrl + v".

FIM

E, assim, o script ainda está funcionando. No entanto, para trocar o alvo de voto, basta trocar o hexadecimal do pixel alvo da próxima vez.

Sintam-se à vontade para discutir, corrigir, tirar dúvidas ou melhorar ainda mais o código :D
Attachments
image.png
image.png (43.63 KiB) Viewed 2422 times
image.png
image.png (32.97 KiB) Viewed 2422 times
image.png
image.png (77.33 KiB) Viewed 2428 times

Paulinhonyx
Posts: 2
Joined: 22 Feb 2021, 07:35

Re: Bot para votação BBB 21

Post by Paulinhonyx » 22 Feb 2021, 07:39

É pra rodar o código no console do navegador?

rafinha_nego
Posts: 2
Joined: 16 Feb 2021, 10:30
GitHub: rafinhanego

Re: Bot para votação BBB 21

Post by rafinha_nego » 22 Feb 2021, 08:00

Paulinhonyx wrote:É pra rodar o código no console do navegador?
Não é necessário a utilização do console do navegador. Basta você abrir a página de votação e executar o bot. Este está desatualizado pois era para votar no participante Nego Di. No entanto, a lógica continua a mesma. Já atualizei o código para votar na participante Karol Conka e o código pode ser encontrado no meu github https://github.com/rafinhanego/botbbb21 .

Paulinhonyx
Posts: 2
Joined: 22 Feb 2021, 07:35

Re: Bot para votação BBB 21

Post by Paulinhonyx » 22 Feb 2021, 09:39

rafinha_nego wrote:
22 Feb 2021, 08:00
Paulinhonyx wrote:É pra rodar o código no console do navegador?
Não é necessário a utilização do console do navegador. Basta você abrir a página de votação e executar o bot. Este está desatualizado pois era para votar no participante Nego Di. No entanto, a lógica continua a mesma. Já atualizei o código para votar na participante Karol Conka e o código pode ser encontrado no meu github https://github.com/rafinhanego/botbbb21 .
Consegui, obrigado!

contextdealer
Posts: 3
Joined: 11 Jun 2020, 18:59

Re: Bot para votação BBB 21

Post by contextdealer » 22 Feb 2021, 10:36

Perfeito!

Ia pensar em algo pra fazer aqui também, aí achei seu tópico. Vou rodar um tempo e depois te conto se deu tudo certo e se tiver alguma sugestão, te falo.

Obrigado, abraço!

Lukan
Posts: 1
Joined: 30 Mar 2021, 09:35

Re: Bot para votação BBB 21

Post by Lukan » 30 Mar 2021, 09:38

Como eu verifico o código hexadecimal de algum participante?

tinouco000
Posts: 1
Joined: 26 Apr 2021, 19:24

Re: Bot para votação BBB 21

Post by tinouco000 » 26 Apr 2021, 19:33

Lukan wrote:
30 Mar 2021, 09:38
Como eu verifico o código hexadecimal de algum participante?
eu queria saber como verifica, e como troca no arquivo (source.ahk) para que essa pessoa seja votada

aedes
Posts: 3
Joined: 23 Apr 2021, 13:02

Re: Bot para votação BBB 21

Post by aedes » 27 Apr 2021, 17:18

Pessoal, quando chega na parte de verificar imagem ele para.

Post Reply

Return to “Scripts e Funções”