Pregunta

Tengo el siguiente código para consultar Google Analytics utilizando la API C # V2.3:

string username = "SAMPLE@SAMPLE.COM";
string pass = "PASS";
string gkey = "?key=XXXXXXXXXXXXXXXXXXXXXXXXXXX";

string dataFeedUrl = "https://www.google.com/analytics/feeds/data" + gkey;            

AnalyticsService service = new AnalyticsService("API Sample");
service.setUserCredentials(username, pass);

DataQuery query1 = new DataQuery(dataFeedUrl);

query1.Ids = "ga:34197921";
query1.Dimensions = "ga:medium,ga:campaign,ga:date,ga:isMobile,ga:isTablet,ga:searchKeyword,ga:hostname";
query1.Metrics = "ga:visits,ga:visitors,ga:visitBounceRate,ga:goalStartsAll,ga:goalCompletionsAll,ga:goal1Starts,ga:goal1Completions,ga:goal2Starts,ga:goal2Completions,ga:goal3Starts,ga:goal3Completions,ga:goal4Starts,ga:goal4Completions,ga:adCost,ga:totalValue";
query1.Sort = "ga:date,ga:hour";
query1.NumberToRetrieve = 50;    

query1.GAStartDate = new DateTime(2012, 1, 2).ToString("yyyy-MM-dd");
query1.GAEndDate = DateTime.Now.ToString("yyyy-MM-dd");
query1.StartIndex = 1;
DataFeed dataFeedVisits = service.Query(query1);

foreach (DataEntry entry in dataFeedVisits.Entries)
{
.... 
}

Me gustaría actualizar la API del Newer V3, pero le resulte difícil ver cualquier ejemplos simples en línea donde alguien se autentica usando Google OAuth y luego consulta los datos de Google Analytics.

Instale el siguiente paquete de nuget: instalar-package google.apis.analytics.v3 -pre En una nueva solución C #, me da las siguientes referencias adicionales:

  • google.apis
  • google.apis.analytics.v3
  • google.apis.auth
  • google.apis.auth.platformservices
  • google.apis.platformservices
  • log4net
  • newtownsoft.json
  • zlib.portable

He visto este artículo, que parece ejecutar un código de código similar a lo que necesito para ejecutar: Cómo enviar Google Consulta de informe analítico usando ASP.NET Google Analytic API versión 3 (google.apis.analytics.v3.dll)?

Sin embargo, ninguno de los códigos en este artículo se resuelve utilizando las bibliotecas de Google que, donde se hace referencia en el NUDET.

¿Qué estoy perdiendo y cómo puedo completar la imagen? ¿Cómo estoy autentico y ejecutar mi consulta a Google Analytics?

Pulgares a Google para no tener un tutorial fácil de seguir en línea para apoyar su biblioteca .NET!

¡Gracias de antemano por cualquier consejo!

¿Fue útil?

Solución

Acceso a Google Analyics con V3 Client Library es realmente agradable tbh.Lo único que no he trabajado es cómo enviarlo un refresco que he almacenado en la base de datos.Estoy atrapado con el que me almacena en la PC.

Solicitar AUTENCIACIÓN: Todas las cosas del Cliente SCRET se almacenan en Client_Secret.Json Puede descargar el archivo de Google APIs Consol.Aparecerá una ventana del navegador si no tiene aprobación si lo hace, simplemente continuará adelante.

private void Form1_Load(object sender, EventArgs e)
{
 UserCredential credential;
 using (var stream = new System.IO.FileStream("client_secret.json", System.IO.FileMode.Open, System.IO.FileAccess.Read))
 {
  credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
  GoogleClientSecrets.Load(stream).Secrets,
  new[] { AnalyticsService.Scope.AnalyticsReadonly },
  "user", CancellationToken.None, new FileDataStore("Analytics.Auth.Store")).Result;
  }

}

Ahora para acceder a Google Analytics que necesita para hacer un servicio de análisis.

AnalyticsService service = new AnalyticsService(new BaseClientService.Initializer() {
 HttpClientInitializer = credential,
 ApplicationName = "Analytics API sample",
 });

Todas tus llamadas ahora se correrán contra eso.

Tuyo debería terminar siendo algo como:

DataResource.GaResource.GetRequest request = service.Data.Ga.Get(ga:34197921, new DateTime(2012, 1, 2).ToString("yyyy-MM-dd"), DateTime.Now.ToString("yyyy-MM-dd"), ""ga:visits,ga:visitors,ga:visitBounceRate,ga:goalStartsAll,ga:goalCompletionsAll,ga:goal1Starts,ga:goal1Completions,ga:goal2Starts,ga:goal2Completions,ga:goal3Starts,ga:goal3Completions,ga:goal4Starts,ga:goal4Completions,ga:adCost,ga:totalValue");
request.Dimensions = "ga:medium,ga:campaign,ga:date,ga:isMobile,ga:isTablet,ga:searchKeyword,ga:hostname";

Tengo una publicación de blog que se ejecuta a través de la mayoría de las llamadas diferentes que puede hacer. http://daimto.com/google-analytics-api-v3-w con-C /

Otros consejos

Estaba teniendo el mismo problema.Había instalado los paquetes de Nuget, pero obtendría el mismo error "No se pudo cargar el archivo o ensamblaje 'Microsoft.Threading.Task.Extensions.desktop, versión= 1.0.16.0, Cultura= Neutral, PublicKeyToken= B03F5F7F11D50A3A' o una de sus dependencias. El sistema no puede encontrar el archivo especificado."Intenté eliminar y volver a instalar los paquetes de nuget en vano.Por lo tanto, finalmente acabo de buscar el archivo Microsoft.Threading.Task.Extensions.Desktop.dll y se encontró en la carpeta Net40.Lo copié a mi carpeta del contenedor y luego funcionó.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top