Exemplo n.º 1
0
        public async Task <Boolean> DescargarInfomracionMotoresMercado()
        {
            string JsonData = "";

            //Valadimas ingreso de la pagina de etoro o la carga de la misma.
            if (IngresoPlataforma())
            {
                sele.ClickSelenium("xpath", "//*[@id='discover - cards - wrapp - discovermarketshome - moversandshakers']/a");

                if (sele.BuscarElemento("xpath", "/html/body/ui-layout/div/div/div[2]/et-discovery-markets-results/div/div/et-discovery-markets-results-grid/div/et-instrument-card[1]", 30))
                {
                    //Obtenemos la cantidad de elementos
                    JsonData = sele.EjecutarJS(ObtenerInformacionJson());
                    List <Empresas> ListaEmpresa = new List <Empresas>();
                    try
                    {
                        ListaEmpresa = JsonConvert.DeserializeObject <List <Empresas> >(JsonData);
                    } catch (Exception ex)
                    {
                        Console.WriteLine(ex);
                    }

                    ListaEmpresa = ObtenerInformacionEstadistica(ListaEmpresa);
                    sele.CloseChrome();
                    foreach (Empresas Empresa in ListaEmpresa)
                    {
                        Empresa.MotorMercado = true;
                        EmpresaDal.IngresarUsuario(Empresa);
                        //EmpresaDal.Agregar(Empresa);
                    }
                }
            }
            sele.CloseChrome();
            return(false);
        }
Exemplo n.º 2
0
        private List <Empresas> ObtenerInformacionEstadistica(List <Empresas> ListaEmpresas)
        {
            ConfiguracionChrome config = new ConfiguracionChrome();

            config.maximaChorme();
            Sele sele = new Sele(config.getOptions());

            sele.OpenChorme();
            int Contador = 0;

            foreach (Empresas Empresa in ListaEmpresas)
            {
                //Ingresamos a las estadisticas directas de las empresas.
                string UrlEmpresa = string.Format("https://www.etoro.com/es/markets/{0}", Empresa.SiglaEmpresa);
                sele.CambiarUrl(UrlEmpresa + "/stats");
                //Esperamos a que cargen las estadisticas.
                if (sele.BuscarElemento("xpath", "/html/body/ui-layout/div/div/div[2]/et-market/div/div/div/div[3]/et-market-stats/et-market-stats-overview/et-card/section/et-card-content/div[4]/div[1]/div", 5))
                {
                    string SectorEmpresa         = "No se encontraron datos";
                    string IndustriaTecnologia   = "No se encontraron datos";
                    string NombreCompletoMercado = "No se encontraron datos";
                    try
                    {
                        NombreCompletoMercado = sele.ObtenerTexto("xpath", "/html/body/ui-layout/div/div/div[2]/et-market/div/div/et-market-header/div/div[1]/div[2]/div[3]");
                        SectorEmpresa         = sele.BuscarElementoYObtenerTexto("a", "class", "sector-link ng-star-inserted");
                        IndustriaTecnologia   = sele.ObtenerTexto("xpath", "/html/body/ui-layout/div/div/div[2]/et-market/div/div/div/div[3]/et-market-stats/et-market-stats-overview/et-card/section/et-card-content/div[4]/div[2]/div/strong");
                    }
                    catch (Exception ex)
                    {
                    }
                    try
                    {
                        if (SectorEmpresa == null)
                        {
                            Console.WriteLine();
                        }
                        Empresa.Sector                = SectorEmpresa;
                        Empresa.Industria             = IndustriaTecnologia;
                        Empresa.NombreCompletoMercado = NombreCompletoMercado;
                        Empresa.TipoMercado           = TipoMercado(NombreCompletoMercado);
                        Empresa.UrlEmpresa            = UrlEmpresa;
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine(ex);
                    }
                }
                Contador = Contador + 1;
                Console.WriteLine("Total de Acciones: " + ListaEmpresas.Count() + "  Accion actual: " + Contador);
            }
            sele.CloseChrome();
            Console.WriteLine("Proceso Chrome Cerrado");
            return(ListaEmpresas);
        }