Mi aplicación lee un archivo (html) de mi sitio web y me gustaría hacer un seguimiento de los accesos a ese archivo con Google Analytics. Como el GA Javascript no se ejecuta al leer el archivo, no se rastrea. ¿Hay alguna manera de activar GA directamente desde el código o, alternativamente, ejecutar Javascript desde una aplicación .NET sin agregar muchas dependencias?¿Cómo desencadenar Google Analytics desde el código?
Respuesta
Google Analytics funciona haciendo una búsqueda por medio de javascript en el servidor de Google. Si desea hacer esto programáticamente, solo debe realizar esta solicitud web usted mismo. Usaría Fiddler o FireBug para capturar cómo se ve la solicitud cuando carga la página en su navegador. Luego puede usar esa misma URL en su aplicación .Net.
Google Analytics proporciona dos formas de rastrear acciones personalizadas, eventos o lo que sea que haga. En su caso, la solución trivial es generar una visita de página virtual para el archivo HTML en su aplicación lee Llame a la adecuada JavaScript function:.
pageTracker._trackPageview("/Foo.html");
De esta manera cada vez que foo.html se procesa, una visita de página será generado para él de la misma manera que sería una consulta normal a su aplicación.
Si desea distinguir estos foo.html s de las páginas vistas normales, GA tiene una bonita característica llamada Event Tracking entonces usted debe echar un vistazo a.
Terminé usando el componente WebBrowser para cargar el archivo .html y, por lo tanto, desencadenar el rastreador de GA. El componente WebBrowser ejecuta el JavaScript incrustado.
using (WebBrowser wb = new WebBrowser())
{
wb.Url = new Uri(@"mytrackingpage.html");
while (wb.ReadyState != WebBrowserReadyState.Complete)
{
Application.DoEvents();
}
}
Ahora todo lo que tengo que hacer es añadir un poco de ErrorHandling, deshacerse de los feos DoEvents y mover el WebBrowser a un hilo separado.
Es curioso saber cómo se ve el código final, después de hacer todo el " ahora todo lo que tengo que hacer es ... "cosas. =) –
He lanzado recientemente una biblioteca .net que le permite registrar de forma nativa una vista de página con Google Analytics a través del código. Se libera como fuente abierta bajo GNU, por lo que todo lo que se requiere es una atribución adecuada.
Usted puede obtener la biblioteca aquí: http://www.diaryofaninja.com/projects/details/ga-dot-net
ejemplo de uso de la API:
GooglePageView pageView = new GooglePageView("My page title",
"www.mydomain.com",
"/my-page-url.html");
TrackingRequest request = new RequestFactory().BuildRequest(pageView);
GoogleTracking.FireTrackingEvent(request);
Hay también construido en un controlador HTTP que le permite disparar el seguimiento de eventos simplemente incluyendo un píxel de seguimiento en la página:
<img src="/tracker.asmx?domain=mydomain.com&pagetitle=My%20Page%20Title&url=/my-page.aspx" />
Alternativamente, puede utilizar jQuery para realizar un seguimiento de los enlaces dentro de una página a través de Google Analytics (zip, jpg, etc.) - b conectado al respecto hace un tiempo aquí:
Si me gustaría establecer el código de Google Analytics sobre la marcha (en lugar de estáticamente en web.config) ¿puedo simplemente establecer request.AnalyticsAccountCode dinámicamente antes de llamar a GoogleTracking.FireTrackingEvent (request)? – Korayem
private void analyticsmethod4(string trackingId, string pagename)
{
Random rnd = new Random();
long timestampFirstRun, timestampLastRun, timestampCurrentRun, numberOfRuns;
// Get the first run time
timestampFirstRun = DateTime.Now.Ticks;
timestampLastRun = DateTime.Now.Ticks-5;
timestampCurrentRun = 45;
numberOfRuns = 2;
// Some values we need
string domainHash = "123456789"; // This can be calcualted for your domain online
int uniqueVisitorId = rnd.Next(100000000, 999999999); // Random
string source = "Shop";
string medium = "medium123";
string sessionNumber = "1";
string campaignNumber = "1";
string culture = Thread.CurrentThread.CurrentCulture.Name;
string screenRes = Screen.PrimaryScreen.Bounds.Width + "x" + Screen.PrimaryScreen.Bounds.Height;
string statsRequest = "http://www.google-analytics.com/__utm.gif" +
"?utmwv=4.6.5" +
"&utmn=" + rnd.Next(100000000, 999999999) +
// "&utmhn=hostname.mydomain.com" +
"&utmcs=-" +
"&utmsr=" + screenRes +
"&utmsc=-" +
"&utmul=" + culture +
"&utmje=-" +
"&utmfl=-" +
"&utmdt=" + pagename +
"&utmhid=1943799692" +
"&utmr=0" +
"&utmp=" + pagename +
"&utmac=" +trackingId+ // Account number
"&utmcc=" +
"__utma%3D" + domainHash + "." + uniqueVisitorId + "." + timestampFirstRun + "." + timestampLastRun + "." + timestampCurrentRun + "." + numberOfRuns +
"%3B%2B__utmz%3D" + domainHash + "." + timestampCurrentRun + "." + sessionNumber + "." + campaignNumber + ".utmcsr%3D" + source + "%7Cutmccn%3D(" + medium + ")%7Cutmcmd%3D" + medium + "%7Cutmcct%3D%2Fd31AaOM%3B";
using (var client = new WebClient())
{
client.DownloadData(statsRequest);
//Stream data = client.OpenRead(statsRequest);
//StreamReader reader = new StreamReader(data);
//string s = reader.ReadToEnd();
}
}
refieren esto - http://tilr.blogspot.com/2012/10/google-analytics-use-google-analytics.html
Google tiene bibliotecas (en alfa) para varios idiomas diferentes para acceder a diversos API de Google, incluyendo Analytics - hay una buena descripción aquí - https://developers.google.com/analytics/devguides/collection/ y el.Biblioteca de red es https://developers.google.com/api-client-library/dotnet/apis/analytics/v3
También hay que tener en cuenta su política de privacidad que tiene que adherirse a cuando se utiliza este: https://developers.google.com/analytics/devguides/collection/protocol/policy
- 1. ¿Cómo desencadenar eventos de Google Analytics desde Python?
- 2. Uso de Google Analytics desde el servidor
- 3. código de Google Analytics, ¿cómo funciona?
- 4. ¿Cómo funciona Google Analytics In-Page Analytics?
- 5. El mejor lugar para insertar el código de Google Analytics
- 6. Desencadenar Google Maps desde el navegador de Android
- 7. ¿Cómo Google Analytics envía datos a Google?
- 8. Uso del código asincrónico de Google Analytics desde el archivo JS externo
- 9. Google Analytics y Python
- 10. Google Analytics - Seguimiento desconocido
- 11. Google Analytics API error 403: "El usuario no tiene ninguna cuenta de Google Analytics"
- 12. Google Analytics Site Search
- 13. Barniz y Google Analytics
- 14. Incrustable Google Analytics "Flair"?
- 15. Google Analytics android dispatch
- 16. Google Analytics: Js externos
- 17. desencadenar google maps marker click
- 18. Google Analytics: _setVar al nuevo código de seguimiento
- 19. Datos de Google Analytics
- 20. ¿Cómo utilizar la instalación de referencia de seguimiento de Google Analytics desde Google Play?
- 21. Nuevo código de Google Analytics en un archivo externo
- 22. ¿Cómo cargo dinámicamente Google Analytics JavaScript?
- 23. Magento Código de Google Analytics no se muestra
- 24. ¿Por qué Google desinstala su código de seguimiento de Analytics?
- 25. ¿Cómo ubicar el ID de la tabla en Google Analytics?
- 26. JQuery vivir + Disqus/Google Analytics
- 27. Google Analytics Realtime Sandbox Entorno
- 28. Android google analytics tracker NoClassdefFoundError
- 29. Cómo omitir la carga de Google Analytics?
- 30. ¿Cómo usar trackPageview en Google Analytics?
Gracias David. Al mirar la URL y el código javascript de Urchin, no parece tan sencillo. Hay muchos números "mágicos" en la URL que no puedo explicar, y que cambian entre las solicitudes. Sin embargo, intentaré agregar esto a mi aplicación y ver qué pasa. – Han
GA proporciona una API pública para eso, realmente no tiene que rastrear las solicitudes. –
Tiene que tener esos números mágicos, de lo contrario, cualquier persona puede cambiar/afectar las estadísticas de visitantes (y otras cosas) del sitio web de otra persona. :) – IsmailS