Сейчас в сети: 996
Советы и вопросы по использованию скриптов AdWords
Подсказки
star_border
Ответить

Как получить список ключевых слов в одну переменную

Студент ✭

Как получить список ключевых слов в кампании в одну переменную, а минусы в другую переменную?

 

1 Ответ экспертаverified_user

Re: Как получить список ключевых слов в одну переменную

Студент ✭
Вот, что у меня получилось.
---------------
var pkeys = [];
var nkeys = [];

var campaignIterator = AdWordsApp.campaigns()
.withCondition('Name = "Название кампании"')
.get();

if (campaignIterator.hasNext()) {
var campaign = campaignIterator.next();
var keywordIterator = campaign.keywords().get();
var negativeKeywordIterator = campaign.negativeKeywords().get();


while (keywordIterator.hasNext()) {
var keyword = keywordIterator.next();
var pk_string = keyword.getText();

pkeys.push(pk_string);
Logger.log(pk_string);
}
Logger.log('*****************');
while (negativeKeywordIterator.hasNext()) {
var negativeKeyword = negativeKeywordIterator.next();
var nk_string = negativeKeyword.getText();
nkeys.push(nk_string);
Logger.log(nk_string);

}
}
Logger.log('==================');
for(var i in pkeys) {
Logger.log (pkeys[i],",");
}
Logger.log('------------------');
for(var i in nkeys) {
Logger.log (nkeys[i],",");
}
}
-------------

Нельзя ли сформировать массив [] ключевых фраз как-нибудь побыстрее?

Re: Как получить список ключевых слов в одну переменную

Ведущий участник

Валерий, здравствуйте!

Вы можете использовать AdWordsApp.report для ускорения работы с отчетами. Он позволяет выгрузить нужные данные гораздо быстрее и обходит часть лимитов скриптов. Номинально, вы будете качать отчеты, но всё нужное для вашей задачи там есть.

 

Вот пример выгрузки ключевиков по всем кампаниям:

 

  var request = 
    //выбираем метрики-параметры, необходимые для отображения в отчетах
    'SELECT Criteria ' +
    'FROM KEYWORDS_PERFORMANCE_REPORT ' +
    'WHERE Status = ENABLED '+
    'AND IsNegative = FALSE ' +
    'AND AdGroupStatus = ENABLED '+
     'DURING YESTERDAY';  
var report = AdWordsApp.report(request);
var keys = []
var rows = report.rows();
while (rows.hasNext()) {
  var row = rows.next();
  keys.push(rows['Criteria'])
}
-------
С уважением, Владимир