如何在城市周围添加半径/邻近度以估算流量(Google Adwords)?

How add a radius / proximity around a city for estimating traffic (Google Adwords)?

对于一个项目,我正忙于 Google Adwords api(客户端库 = C#)。我向访问者展示了基于关键字和当前 locality/city 的流量估算值。它使用以下方法

https://developers.google.com/adwords/api/docs/guides/traffic-estimator-service

我想添加一个额外的要求:估计值必须包含 locality/city 秒周围 15 公里的接近度(半径)。我尝试将邻近度添加到 campaignestimator 对象,但随后根据响应发生错误。

部分程序代码

var proximity = new Proximity
{
    radiusDistanceUnits = ProximityDistanceUnits.KILOMETERS,
    radiusInUnits = seaConfigurationModel.Proximity,
    geoPoint = new GeoPoint()
    {
        latitudeInMicroDegrees = 43633941,
        longitudeInMicroDegrees = -79398718
    }
};
campaignEstimateRequest.criteria = new Criterion[] { languageCriterion, proximity };

异常:

Unmarshalling Error: cvc-elt.4.2: Cannot resolve 'q2:Proximity' to a type definition for element 'criteria'. 

有谁知道如何解决这个问题?我需要另一种方法吗?

非常感谢。

乔迪

问题是 CampaignEstimateRequest 条件只能是 LanguageLocation 两种类型之一,而您正试图传递 Proximity 类型.

此外,Proximity 仅(显然)适用于 AdX API,我怀疑您可能不会使用它。

您可能需要做的是根据位置计算结果,将其设置为目标城市,然后手动删除不在半径范围内的任何内容。

我在这里找到了一个如何计算半径包含的例子:

How to check if a certain coordinates fall to another coordinates radius using PHP only

但您需要将其转换为 C#。

我认为需要使用邻近性。创建邻近目标的代码类似于添加位置目标的方式,只是您必须创建 Proximity 对象而不是 Location 对象。

不确定,但我认为如果您设置 Proximity 对象,则在 TrafficEstimatorService 中可用。但是,如果是这样,您可以设置一个半径。查看以下 URL: https://developers.google.com/adwords/api/docs/guides/location-targeting

祝你好运!