gpt4 book ai didi

c# - .Net 与网站管理员工具(Google.Apis.Webmasters.v3 Nuget 包)斗争

转载 作者:行者123 更新时间:2023-11-30 12:24:57 25 4
gpt4 key购买 nike

我想知道是否有人比我更进一步地通过 .Net 使用 Google 网站管理员工具 API 的新搜索分析功能?

我正在使用 Google.Apis.Webmasters.v3 Nuget 包并且已经进行了身份验证和连接(使用服务帐户)

但是,我很难通过搜索分析取得任何进展。

我在网上找不到任何代码示例,所以一直在 https://developers.google.com/resources/api-libraries/documentation/webmasters/v3/csharp/latest/annotated.html 上的类信息的指导下以及很多猜测。

这是我使用的代码:

SearchanalyticsResource mySearchanalyticsResource = new SearchanalyticsResource(service);

SearchAnalyticsQueryRequest myRequest = new SearchAnalyticsQueryRequest();
myRequest.StartDate = "2015-08-01";
myRequest.EndDate = "2015-08-31";
myRequest.RowLimit = 10;

SearchanalyticsResource.QueryRequest myQueryRequest = mySearchanalyticsResource.Query(myRequest, site.SiteUrl);
SearchAnalyticsQueryResponse myQueryResponse = myQueryRequest.Execute();

它运行正常,直到我收到“发生错误,但错误响应无法反序列化”时执行方法。下面的异常详细信息...

Newtonsoft.Json.JsonReaderException {“解析 NaN 值时出错。路径”,第 0 行,位置 0。“

非常感谢收到任何帮助或代码示例!

最佳答案

这可以编译,但不会为我返回任何数据。

授权:

 public static WebmastersService WMAuthenticateOauth(string clientId, string clientSecret, string userName)
{

string[] scopes = new string[] { WebmastersService.Scope.Webmasters }; // View analytics data

try
{
// here is where we Request the user to give us access, or use the Refresh Token that was previously stored in %AppData%
UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(new ClientSecrets { ClientId = clientId, ClientSecret = clientSecret }
, scopes
, userName
, CancellationToken.None
, new FileDataStore(".", true)).Result;

WebmastersService service = new WebmastersService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "WebMasters API Sample",
});
return service;
}
catch (Exception ex)
{

Console.WriteLine(ex.InnerException);
return null;

}

}

请求

var service = Authentcation.WMAuthenticateOauth(clientid, secret, "testmmm");


IList<string> newlist = new List<string> ();
newlist.Add("country");
newlist.Add("device");

SearchAnalyticsQueryRequest body = new SearchAnalyticsQueryRequest();
body.StartDate = "2015-04-01";
body.EndDate = "2015-05-01";
body.Dimensions = newlist;

var result = service.Searchanalytics.Query(body, "http://www.daimto.com/").Execute();

我也尝试使用此 page 底部的 try me 进行测试.它也不返回任何东西。

这个奇怪的 API。

更新:

我终于取回了数据我将日期设置为

body.StartDate = "2015-09-01";
body.EndDate = "2015-09-15";

我想知道这个东西是不是数据有限,它只能追溯到目前为止。

enter image description here

关于c# - .Net 与网站管理员工具(Google.Apis.Webmasters.v3 Nuget 包)斗争,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32526117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com