Получение статистики кампании (например, кликов, CTR, CPC и т. Д.) Через API AdWords

1

То, что я пытаюсь сделать в настоящее время, - это получение статистики кампании, такой как клики, показы, CTR, средняя цена за клик и т.д. Для конкретной кампании. К сожалению, я не могу найти, как это сделать с помощью API AdWords.

То, что я нашел до сих пор,

  1. Возможно, в более ранней версии CampaignService нам удалось получить статистику, сделав что-то вроде $campaign->campaignStats. К несчастью, я использую V201506 и в нем нет объекта/переменной campaignStats.
  2. Я, вероятно, могу получить эту статистику, используя " CAMPAIGN_PERFORMANCE_REPORT ", но ее нужно загрузить, и я не хочу загружать отчет. Я просто хочу получить массив или что-то подобное, чтобы я мог его обработать. Кроме того, я не хочу предоставлять какие-либо временные рамки, я просто хочу, чтобы все статистические данные времени были возвращены для этой кампании. Возможно ли это?

Если бы кто-нибудь мог мне помочь, я бы очень признателен. Вид застрял здесь в течение нескольких часов, просмотрел всю документацию API AdWords, но не мог понять, что было бы лучшим и легким подходом к этому.

Теги:
google-adwords

2 ответа

1

Теперь Adwords API позволяет только статистику. А статистику можно получить, используя два метода.

1) Используя службу отчетности, описанную здесь

2) Вы можете использовать язык запросов Adwords. Видеть это

  • 1
    Как вы можете получить стоимость с AWQL и CampaignService?
  • 0
    Действительно - как вы получаете стоимость (или другие поля) с помощью AWQL - можете ли вы добавить пример?
0

я не знаю, если вам все еще нужно это, но API V201806 я нашел решение. В этой версии API существует функция getAsString(), которая возвращает данные в String и не загружает файл, я запрашиваю данные в формате XML и в PHP преобразуют ответ в XML-объект.

Это код, который я использовал:

class DownloadCriteriaReportWithAwql {

public static function runExample(AdWordsSession $session, $reportFormat){

    // Create report query to get the data for last 7 days.
    $query = (new ReportQueryBuilder())
        ->select([
            'CampaignId',
            'AdGroupId',
            'Id',
            'Criteria',
            'CriteriaType',
            'Impressions',
            'Clicks',
            'Cost',
            'Conversions'
        ])
        ->from(ReportDefinitionReportType::CRITERIA_PERFORMANCE_REPORT)
        ->where('Status')->in(['ENABLED'])
        ->duringDateRange(ReportDefinitionDateRangeType::LAST_7_DAYS)
        ->build();
    // Download report as a string.
    $reportDownloader = new ReportDownloader($session);
    // Optional: If you need to adjust report settings just for this one
    // request, you can create and supply the settings override here.
    // Otherwise, default values from the configuration
    // file (adsapi_php.ini) are used.
    $reportSettingsOverride = (new ReportSettingsBuilder())->includeZeroImpressions(false)->build();

    $reportDownloadResult = $reportDownloader->downloadReportWithAwql(
        sprintf('%s', $query),
        $reportFormat,
        $reportSettingsOverride
    );
    //print "Report was downloaded and printed below:\n";
    $datos = $reportDownloadResult->getAsString();
    return ($datos);
}
public static function main(){
    // Generate a refreshable OAuth2 credential for authentication.
    $oAuth2Credential = (new OAuth2TokenBuilder())->fromFile()->build();
    // See: AdWordsSessionBuilder for setting a client customer ID that is
    // different from that specified in your adsapi_php.ini file.
    // Construct an API session configured from a properties file and the
    // OAuth2 credentials above.
    $session = (new AdWordsSessionBuilder())
        ->fromFile()
        ->withOAuth2Credential($oAuth2Credential)
        ->build();
    $string = self::runExample($session, DownloadFormat::XML);
    $xml = new \SimpleXMLElement($string);
    return $xml;}}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню