Enviar muchos mensajes c 3

Enviar muchos mensajes de WhatsApp con C#

En este tutorial vamos a Enviar muchos mensajes de WhatsApp con C# y aprenderemos crear nuestro propio sistema conectado a Excel para poder manipular los contactos y números de WhatsApp, siguiendo estos pasos:

Crear Proyecto en Visual Studio IDE

Seleccionamos C#, Windows, Escritorio y despues Aplicacion Wondows Form y Siguiente

Colocamos un nombre y damos click en siguiente

Seleccionamos .Net 6.0 y click en Crear

Configuramos las dependencias del código

Arrastramos 2 botones y les ponemos Abrir WhatsApp, Enviar WhatsApp respectivamente y hacemos click en ambos para crear su código

Agregamos el codigo: IWebDriver driver; damos click en la sugerencia y seleccionamos Instalar paquete Selenium, Buscar ultima versión

Agregamos la variable global localPath asi: string localPath = Directory.GetCurrentDirectory();

Dentro de button1_Click agregamos este codigo

        private void button1_Click(object sender, EventArgs e)
        {
            //Leemos el chromedriver que esta en la misma direccion del programa
            System.Environment.SetEnvironmentVariable("webdriver.chrome.driver", localPath + "/chromedriver.exe");
            //Inicializamos ls opciones de chrome
            ChromeOptions optionsGoo = new ChromeOptions();
            //Permitimos la propiedad no-sandbox para evitar problemas en linux
            optionsGoo.AddArguments("--no-sandbox");
            //Deshabilitamos las notificaciones
            optionsGoo.AddArguments("--disable-notifications");
            //Guardamos la sesion en la carpeta chromeWA
            optionsGoo.AddArguments("--user-data-dir=" + localPath + "\\chromeWA");
            //Instanciamos un nuevo chromedriver
            driver = new ChromeDriver(optionsGoo);
            //Abrimos WA
            driver.Url = "https://web.whatsapp.com";
        }

Dentro de button2_Click agregamos este codigo

        private void button2_Click(object sender, EventArgs e)
        {
            //Ubicamos el archivo contactos
            string Contactoscsv = localPath + "\\Contactos.csv";
            using (TextFieldParser parser = new TextFieldParser(@"" + Contactoscsv))
            {
                parser.TextFieldType = FieldType.Delimited;
                parser.SetDelimiters(",");
                while (!parser.EndOfData)
                {
                    //Processing row
                    string[] fields = parser.ReadFields();
                    //Obtenemos el nombre del contacto
                    string contacto = fields[0];
                    //Obtenemos el numero del contacto
                    string numero = fields[1];
                    //Obtenemos el mensaje del contacto
                    string mensaje = fields[2];
                    //Abrimos whatsapp web con el numero de telefono a enviar
                    driver.Url = "https://web.whatsapp.com/send/?phone=" + numero + "&text&type=phone_number&app_absent=0";
                    //Declaramos el tiempo de espera
                    driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10);
                    //Escribimos el mensaje
                    driver.FindElement(By.XPath("//*[@id=\"main\"]/footer/div[1]/div/span[2]/div/div[2]/div[1]/div/div[1]/p")).SendKeys(mensaje);
                    //Esperamos 1 segundo
                    Thread.Sleep(1000);
                    //Precionamos enter
                    driver.FindElement(By.XPath("//*[@id=\"main\"]/footer/div[1]/div/span[2]/div/div[2]/div[1]/div/div[1]/p")).SendKeys(Tecla.Enter);
                    Thread.Sleep(1000);
                }
            }
            driver.Quit();
        }

Declaramos la variable Tecla asi: using Tecla = OpenQA.Selenium.Keys;

Código completo:

/*
Enviar muchos mensajes de WhatsApp con C#
*/
using Microsoft.VisualBasic.FileIO;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using Tecla = OpenQA.Selenium.Keys;
namespace EnviarMensajes
{
    public partial class Form1 : Form
    {
        //Declaramos el driver
        IWebDriver driver;
        //Obtenemos la ubicacion de nuestro programa
        string localPath = Directory.GetCurrentDirectory();
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            //Leemos el chromedriver que esta en la misma direccion del programa
            System.Environment.SetEnvironmentVariable("webdriver.chrome.driver", localPath + "/chromedriver.exe");
            //Inicializamos ls opciones de chrome
            ChromeOptions optionsGoo = new ChromeOptions();
            //Permitimos la propiedad no-sandbox para evitar problemas en linux
            optionsGoo.AddArguments("--no-sandbox");
            //Deshabilitamos las notificaciones
            optionsGoo.AddArguments("--disable-notifications");
            //Guardamos la sesion en la carpeta chromeWA
            optionsGoo.AddArguments("--user-data-dir=" + localPath + "\\chromeWA");
            //Instanciamos un nuevo chromedriver
            driver = new ChromeDriver(optionsGoo);
            //Abrimos WA
            driver.Url = "https://web.whatsapp.com";
        }

        private void button2_Click(object sender, EventArgs e)
        {
            //Ubicamos el archivo contactos
            string Contactoscsv = localPath + "\\Contactos.csv";
            using (TextFieldParser parser = new TextFieldParser(@"" + Contactoscsv))
            {
                parser.TextFieldType = FieldType.Delimited;
                parser.SetDelimiters(",");
                while (!parser.EndOfData)
                {
                    //Processing row
                    string[] fields = parser.ReadFields();
                    //Obtenemos el nombre del contacto
                    string contacto = fields[0];
                    //Obtenemos el numero del contacto
                    string numero = fields[1];
                    //Obtenemos el mensaje del contacto
                    string mensaje = fields[2];
                    //Abrimos whatsapp web con el numero de telefono a enviar
                    driver.Url = "https://web.whatsapp.com/send/?phone=" + numero + "&text&type=phone_number&app_absent=0";
                    //Declaramos el tiempo de espera
                    driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10);
                    //Escribimos el mensaje
                    driver.FindElement(By.XPath("//*[@id=\"main\"]/footer/div[1]/div/span[2]/div/div[2]/div[1]/div/div[1]/p")).SendKeys(mensaje);
                    //Esperamos 1 segundo
                    Thread.Sleep(1000);
                    //Precionamos enter
                    driver.FindElement(By.XPath("//*[@id=\"main\"]/footer/div[1]/div/span[2]/div/div[2]/div[1]/div/div[1]/p")).SendKeys(Tecla.Enter);
                    Thread.Sleep(1000);
                }
            }
            driver.Quit();
        }
    }
}

Descargamos Requerimientos extras

1.-Damos click derecho en el proyecto

2.-Click Abrir carpeta en el Explorador de archivos

3.- Nos movemos a bin -> Debug -> net6.0-windows

Descargamos las dependencias de Chrome

En chrome damos click en los 3 puntos, seleccionamos ayuda, informacion de google y aparecera la vercion de chrome

Vamos a https://chromedriver.chromium.org/downloads y descargamos la version de chrome que tenemos instalado

Descargamos Contactos.csv y creamos la carpeta chromeWA de tal suerte que nuestros archivos quedaran así:

Enviar muchos mensajes de WhatsApp con C#

Click en play y cuando corra el programa hacemos click en Abrir WhatsApp

Damos click en Abrir WhatsApp y escaneamos el codigo QR con nuestro WhatsApp del telefono

Damos click en Enviar WhatsApp y esperamos que se envien los textos del excel

Enviar muchos mensajes de WhatsApp con C#

Descargar programa: https://www.programadornovato.com/enviar-muchos-mensajes-de-whatsapp-rapido/

Enviar muchos mensajes de WhatsApp C# – YouTube

Salir de la versión móvil

Ads Blocker Detected!!!

En Programador Novato vivimos de los anuncios, hemos detectado que está utilizando extensiones para bloquear anuncios. Ayudanos deshabilitando tu bloqueador de anuncios. :)