• EnglishSpanishGermanFrenchPolishChinese (Traditional)


EnglishSpanishGermanFrenchPolishChinese (Traditional)

Operating systems, scripting, PowerShell and security

Operating systems, software development, scripting, PowerShell tips, network and security

Menú principal
  • Categorías
  • Cursos
  • Libro de PowerShell
  • Lo mejor
  • Lo último
  • Proyectos
  • Contactar
Ir al contenido

¿Cómo crear un bot muy simple en 5 minutos?

Utilizando el bot del siguiente post https://www.jesusninoc.com/04/17/como-funciona-un-bot-como-crear-un-bot-muy-simple-en-2-minutos/

Vamos a añadir una nueva función al bot: «Abrir el primer tuit de una cuenta de Twitter automáticamente».

El primer paso es abrir el primer tuit leyéndolo desde la cuenta de Twitter, el código que permite hacerlo esto es el siguiente:

PowerShell
1
2
$web=Invoke-WebRequest "https://twitter.com/microsoft"
Start-Process chrome ("https://twitter.com"+($web.Links | Where-Object {$_.href -match "status"} | Select-Object href)[0].href)

El siguiente paso es abrir Google Chrome con la dirección del tuit y pulsar en el corazón de forma automática, es necesario saber la posición en el tuit que tiene el corazón en la pantalla, en este caso la posición es 513 504, como hemos dicho es un código muy simple, los «bots» normalmente saben dónde localizar la posición del corazón automáticamente. Una vez que sabemos localizar la posición pulsamos encima haciendo click.

Todo el código junto es el siguiente:

PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$MouseEventSig=@'
[DllImport("user32.dll",CharSet=CharSet.Auto, CallingConvention=CallingConvention.StdCall)]
public static extern void mouse_event(long dwFlags, long dx, long dy, long cButtons, long dwExtraInfo);
'@
$MouseEvent = Add-Type -memberDefinition $MouseEventSig -name "MouseEventWinApi" -passThru
 
$web=Invoke-WebRequest "https://twitter.com/microsoft"
Start-Process chrome ("https://twitter.com"+($web.Links | Where-Object {$_.href -match "status"} | Select-Object href)[0].href)
 
Start-Sleep -Seconds 5
 
[System.Windows.Forms.Cursor]::Position = New-Object System.Drawing.Point(513,504)
$MouseEvent::mouse_event(0x00000002, 0, 0, 0, 0)
$MouseEvent::mouse_event(0x00000004, 0, 0, 0, 0)

De momento hemos conseguido hacer cick en el botón de me gusta del primer tuit de una cuenta de Twitter de forma automática.

Publicado el día 18 de abril de 2020

CATEGORÍAS

Automatización, PowerShell

ETIQUETAS

Add-Type, Bots, Chrome, Código, Drawing, Google, Google Chrome, HTTPS, Invoke-WebRequest, Jesús Niño, Jesús Niño Camazón, match, Microsoft, mouse_event, MouseEventWinApi, New-Object, Select-Object, Start-Process, Start-Sleep, System.Drawing, System.Drawing.Point, System.Windows.Forms.Cursor, Twitter, user32.dll, Where-Object, Windows

MÁS

  • Mostrar y generar en tiempo real una tabla HTML con el valor nutricional (azúcares) de todos los fabricantes de un producto encontrado en la tienda online de un supermercado en PowerShell
  • Escribir y un mensaje en una caja de texto y hacer click en un botón de un formulario de PowerShell de forma automática utilizando SendMessage y FindWindowEx de user32.dll
  • Cómo depurar scripts en ISE de Windows PowerShell
  • ¿Cómo funciona un bot? ¿Cómo crear un bot muy simple en 2 minutos?
  • Ejercicios de seguridad: simular el funcionamiento de una VPN desde PowerShell
  • Automatizar desde Python