Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En las secciones siguientes se muestran ejemplos de scripts que realizan diversas acciones en palabras clave.
Agregar palabras clave
Para agregar una palabra clave, primero obtén el grupo de anuncios al que quieres agregar la palabra clave. Usa el objeto AdGroupSelector para seleccionar el grupo de anuncios. El uso del método proporciona un withIds mejor rendimiento que pasar el nombre del grupo de anuncios en el withCondition método.
A continuación, llama al método newKeywordBuilder del grupo de anuncios para obtener un generador que uses para especificar las propiedades de la palabra clave. La única propiedad que debe especificar es el texto de la palabra clave (consulte el withText método). El texto debe incluir el tipo de coincidencia (comillas para el tipo de coincidencia de frase, corchetes para el tipo de coincidencia exacta, nada para el tipo de coincidencia amplia).
Si no especificas un valor de CPC, se utilizará de forma predeterminada el valor de CPC del grupo de anuncios. De forma predeterminada, el estado de la palabra clave está habilitado.
Llamar al método del build constructor crea la palabra clave de forma asíncrona; Scripts agrega la palabra clave en algún momento antes de que finalice el script o si llama a uno de los métodos de la operación de compilación. Para obtener información sobre este proceso, consulte ¿Qué es un constructor?
function main() {
// The ID of the ad group to add the keywords to.
// IDs in Scripts are string integers.
var adGroupId = 'AD GROUP ID GOES HERE';
var adGroup = getAdGroup(adGroupId);
// Keywords to add. Update as appropriate.
var keywords = [];
keywords.push({
text : "keyword 1",
cpc : 1.25,
finalUrl : 'http://www.example.com'
});
keywords.push({
text : "keyword 2",
cpc : 1.5,
finalUrl : 'http://www.example.com'
});
var operations = [];
if (adGroup != null)
{
for (var keyword of keywords) {
var operation = addKeyword(
adGroup,
keyword.text,
keyword.cpc,
keyword.finalUrl);
operations.push(operation);
}
}
else {
Logger.log("Unable to retrieve ad group, " + adGroupId);
}
checkBuildStatus(operations, keywords);
}
// Get the ad group using its ID.
function getAdGroup(id) {
var iterator = AdsApp.adGroups()
.withIds([id])
.get();
// Return the ad group if it exists; otherwise, null.
if (iterator.hasNext()) {
return iterator.next();
}
else {
return null;
}
}
// Add the keyword to the specified ad group.
function addKeyword(adGroup, text, cpc, finalUrl) {
return adGroup.newKeywordBuilder()
.withText(text)
.withCpc(cpc)
.withFinalUrl(finalUrl)
.build();
}
// Check the keyword's build status.
function checkBuildStatus(operations, keywords) {
for (var i = 0; i < operations.length; i++) {
if (!operations[i].isSuccessful()) {
for (var error of operations[i].getErrors()) {
Logger.log(`Failed to add, ${keywords[i].text}. Error: ${error}`);
}
}
}
}
Pausar una palabra clave
Cuando agregas una palabra clave, su estado es Habilitado de manera predeterminada. Para pausar la palabra clave, llama al método de la pause palabra clave. Para determinar el estado de la palabra clave, llame a las palabras clave y isPaused métodosisEnabled.
function main() {
var campaignName = 'CAMPAIGN NAME GOES HERE';
var adGroupName = 'AD GROUP NAME GOES HERE';
var keywordText = 'KEYWORD TEXT GOES HERE';
var iterator = AdsApp.keywords()
.withCondition(`Text = '${keywordText}'`)
.withCondition(`AdGroupName = '${adGroupName}'`)
.withCondition(`CampaignName = '${campaignName}'`)
.get();
while (iterator.hasNext()) {
var keyword = iterator.next();
keyword.pause();
}
}
Obtener todas las palabras clave de un grupo de anuncios
Para obtener todas las palabras clave de un grupo de anuncios, primero llame al método del keywords objeto AdsApp para obtener el selector. Usa el withCondition método para especificar el grupo de anuncios y la campaña. A continuación, llame al método del get selector para obtener un iterador que pueda usar para iterar en la lista de palabras clave. Para determinar el número de palabras clave del iterador, llame al método del totalNumEntities iterador.
Si tienes acceso a los identificadores de palabras clave, úsalos en su lugar. El uso de identificadores para obtener entidades proporciona un mejor rendimiento. En lugar de usar el withCondition método de filtro, use el withIds método. Por ejemplo, withIds(['12345']). Hay límites en el número de entidades que puede recuperar mediante identificadores.
function main() {
var campaignName = 'CAMPAIGN NAME GOES HERE';
var adGroupName = 'AD GROUP NAME GOES HERE';
var iterator = AdsApp.keywords()
.withCondition(`AdGroupName = '${adGroupName}'`)
.withCondition(`CampaignName = '${campaignName}'`)
.get();
while (iterator.hasNext()) {
var keyword = iterator.next();
}
}
Obtener todas las palabras clave de una cuenta
Hay un límite en el número de palabras clave que los scripts pueden devolver para una cuenta. El límite no está definido y puede cambiar. En el ejemplo siguiente se muestra cómo puede controlar los casos en los que una cuenta tiene demasiadas palabras clave. En el ejemplo se intentan capturar primero todas las palabras clave en el nivel de cuenta. Si se produce un error debido al error "Hay demasiadas entidades", intenta realizar varias llamadas para capturar palabras clave por campaña, ya que normalmente hay menos entidades en el nivel de campaña.
Para obtener información sobre el uso de la palabra clave yield , consulte Use la palabra clave yield cuando obtenga grandes conjuntos de entidades.
function* getEntities() {
const applyConditions = _ => _
.withCondition('CampaignStatus = ENABLED')
.withCondition('AdGroupStatus = ENABLED')
.withCondition('Status = ENABLED')
.withCondition("CombinedApprovalStatus = DISAPPROVED");
try {
// Get the account's keywords.
const keywords = applyConditions(AdsApp.keywords()).get();
while (keywords.hasNext()) {
yield keywords.next();
}
} catch (e) {
if (!e.message.startsWith('There are too many entities')) {
throw e;
}
// If there are too many keywords at the account level,
// get keywords by campaigns under the account.
const campaigns = AdsApp.campaigns().get();
while (campaigns.hasNext()) {
const campaign = campaigns.next();
const keywords = applyConditions(campaign.keywords()).get();
while (keywords.hasNext()) {
yield keywords.next();
}
}
}
}
Obtener los datos de rendimiento de una palabra clave
Para obtener las métricas de rendimiento de una palabra clave, llame al método getStats de la palabra clave. Cuando recibas la palabra clave, tienes que especificar el intervalo de fechas de los datos de métricas que quieres. Puede especificar el intervalo de fechas mediante un literal predefinido, como LAST_MONTH u HOY, o una fecha de inicio y finalización. Para especificar el intervalo de fechas, utilice uno de los forDateRange métodos al seleccionar la palabra clave (consulte KeywordSelector).
Para obtener una lista de métricas a las que puede acceder, consulte el objeto Stats .
function main() {
var campaignName = 'CAMPAIGN NAME GOES HERE';
var adGroupName = 'AD GROUP NAME GOES HERE';
var keywordText = 'KEYWORD TEXT GOES HERE';
// Get the keyword. You need to specify the date range of the
// performance data you want to get.
var iterator = AdsApp.keywords()
.forDateRange('LAST_WEEK')
.withCondition(`Text = '${keywordText}'`)
.withCondition(`AdGroupName = '${adGroupName}'`)
.withCondition(`CampaignName = '${campaignName}'`)
.get();
// If the keyword is found, log some metrics.
if (iterator.hasNext()) {
var keyword = iterator.next();
var metrics = keyword.getStats(); // Gets the performance metrics.
}
}
Actualizar el valor de puja de una palabra clave.
Para ver un ejemplo que muestra cómo actualizar el valor de puja de una palabra clave, consulta Llamar a los servicios de Google.