Necesito analizar cadenas de UserAgent desde una aplicación de consola y esto parece una forma sencilla de hacerlo, pero obviamente no tengo un objeto HttpRequest y no puedo parecer falso con un encabezado User-Agent (Obtengo la excepción de la plataforma no admitida). ¿Hay alguna forma de hacerlo, o debería comenzar a explorar otras alternativas al análisis del agente de usuario?¿Es posible utilizar HttpBrowserCapabilities desde una aplicación de consola C#?
Respuesta
La cabecera User-Agent
puede ser analizada por la clase HttpBrowserCapabilities
con la ayuda de un BrowserCapabilitiesFactory, de la siguiente manera:
var userAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.10) " +
"Gecko/20100914 Firefox/3.6.10";
var browser = new HttpBrowserCapabilities {
Capabilities = new Hashtable {{string.Empty, userAgent}}
};
var factory = new BrowserCapabilitiesFactory();
factory.ConfigureBrowserCapabilities(new NameValueCollection(), browser);
Esto funciona! ¡Gracias! –
¡Gracias esto también resolvió mi problema! –
Quiero ejecutar esto fuera de un entorno asp.net (análisis de archivos de registro). No parece determinar muy bien el tipo de agente y la versión. "Mozilla/5.0 + (Windows + NT + 6.1) + AppleWebKit/537.36 + (KHTML, + como + Gecko) + Chrome/37.0.2062.120 + Safari/537.36" = Chrome 37, pero "Mozilla/4.0 + (compatible; + MSIE + 7.0; + Windows + NT + 6.1; + Trident/4.0; + SLCC2; + .NET + CLR + 2.0.50727; + .NET + CLR + 3.5.30729; + .NET + CLR + 3.0.30729; + Media + Center + PC + 6.0; + .NET4.0C; + .NET4.0E; + InfoPath.3; + SynapseWorkstation.3.2.1; + MS-RTC + LM + 8; + Tablet + PC + 2.0) "= Mozilla. – Jeremy
- 1. ¿Es posible utilizar los binarios de C++ desde php
- 2. Ejecutar aplicación de consola desde otra aplicación de consola
- 3. ¿Es posible desactivar C++ assert desde la aplicación .net
- 4. Imprimir una imagen desde una aplicación de consola
- 5. ¿Es posible convertir un proyecto de aplicación Win32 en una aplicación de consola?
- 6. ¿Es posible leer desde la consola en Dart?
- 7. Detener una aplicación de Android desde la consola
- 8. ¿Es posible acceder a SQL Server Service Broker desde una aplicación C#?
- 9. Java: ¿Es posible enviar SMS desde una aplicación Java?
- 10. ¿Es posible leer un número desconocido de líneas desde la consola en C#?
- 11. C#: ¿Es posible que una sola aplicación se comporte como consola o aplicación de Windows según los switches?
- 12. ¿Es posible hacer una automatización de consola Firebug?
- 13. ¿Es posible ejecutar una secuencia de ensamblaje x86 desde C#?
- 14. C# icono de aplicación de consola
- 15. ¿Cómo construyo una aplicación de consola VB6?
- 16. Abra web.config desde la aplicación de consola?
- 17. Posible salida a consola desde dentro de una biblioteca de clase C#?
- 18. ¿No hay salida a la consola desde una aplicación WPF?
- 19. ¿Es posible utilizar Aero Peek para niños con MDI dentro de una aplicación de winforms?
- 20. ¿es posible compartir datos de sesión desde una aplicación asp.net mvc y una aplicación python?
- 21. matar limpiamente una aplicación de consola desde el interior de un grupo de aplicaciones de consola
- 22. ¿Es posible cambiar el icono de una ventana de consola desde .net?
- 23. ¿Cómo obtener una ruta desde un directorio en una aplicación de consola C#?
- 24. Usando ELMAH en una aplicación de consola
- 25. ¿Es posible utilizar tuberías en OCaml?
- 26. ¿por qué es posible utilizar estructura indefinida en c
- 27. ¿Es posible utilizar Python con php
- 28. Windows desde la consola
- 29. ¿Es posible utilizar la transparencia en el icono de una aplicación de iPhone?
- 30. ¿Es posible llamar al método dentro de una aplicación Java desde una JVM diferente?
qué tipo de solicitud de la página que desea capturar ???? especialmente desde la aplicación de la consola? –
Sin solicitud de página. Tengo una lista de agentes de usuario en un archivo de texto y quiero analizar el navegador, la versión, el sistema operativo y un par de cosas más, todo lo cual habría estado disponible a través de Request.Browser, pero ahora estoy tratando de obtenerlos de una aplicación de consola y una lista de cadenas de UserAgent. –