您的位置:首页 > 生活百科 >格机代码sh文件(格林竞价 - 自动出价策略)

格机代码sh文件(格林竞价 - 自动出价策略)

摘要 格林竞价 - 自动出价策略 介绍 格林竞价是一种在竞价排名系统中,通过设置自动出价策略,动态调整广告出价,以达到最优化投放效果的系统。今天我们将介绍如何使用格林竞价,通过编...
格林竞价 - 自动出价策略

介绍

格林竞价是一种在竞价排名系统中,通过设置自动出价策略,动态调整广告出价,以达到最优化投放效果的系统。今天我们将介绍如何使用格林竞价,通过编写sh文件,实现自动化竞价。

准备工作

在开始编写sh文件之前,我们需要确保已经具备以下几个条件: 1.已经设置了广告计划和广告组,以及相关的关键字和创意内容; 2.已经授权给格林竞价管理账户,获取所需的Google Ads API权限; 3.已经创建了Google Ads API密钥和客户端ID,并确保这些信息是正确的。 现在,我们开始编写sh文件。

编写sh文件

首先,我们需要登录Google Ads API,获取到访问令牌: curl - d \"client_id=CLIENT-ID&client_secret=CLIENT-SECRET&refresh_token=REFRESH-TOKEN&grant_type=refresh_token\" //oauth2.googleapis.com/token 然后,在shell脚本中添加以下代码,实现基本的访问认证: ACCESS_TOKEN= $ (curl -d \"client_id=CLIENT-ID&client_secret=CLIENT-SECRET&refresh_token=REFRESH-TOKEN&grant_type=refresh_token\" //oauth2.googleapis.com/token | jq -r \".access_token\") 接下来,需要编写具体的竞价策略: 1.确定投放时间段和频次,并结合目标预算和ROI,设定出价上、下限; 2.根据设置的出价策略和相关指标信息,选择合适的自动出价规则,如eCPC、CPA、MAXIMIZE_CLICKS等; 3.通过Google Ads API,向广告计划和广告组中的关键字添加出价并保存。 下面是一个简单的例子,供大家参考: #!/bin/bash ACCESS_TOKEN= $ (curl -d \"client_id=CLIENT-ID&client_secret=CLIENT-SECRET&refresh_token=REFRESH-TOKEN&grant_type=refresh_token\" //oauth2.googleapis.com/token | jq -r '.access_token') # 设定时间段 DATE_FROM=\"2022-11-15\" DATE_TO=\"2022-11-30\" # 设定最高出价和最低出价 MAX_BID=100 MIN_BID=20 # 设定目标ROI TARGET_ROI=3 # 设定自动出价策略(eCPC) BIDDING_STRATEGY=ECPC # 获取到关键字和广告组 IFS=',' ; read -ra ACCOUNTS <<< \"$ACCOUNT_IDS\" for ACCOUNT in \"${ACCOUNTS[@]}\"; do IFS=' '; read -ra CUSTOMERS <<< \"$(curl https://googleads.googleapis.com/v8/customers?access_token=$ACCESS_TOKEN)\" for CUSTOMER in \"${CUSTOMERS[@]}\"; do IFS=' '; read -ra CAMPAIGNS <<< \"$(curl -s -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'Content-Type: application/json' https://googleads.googleapis.com/v8/customers/$CUSTOMER/campaigns)\" for CAMPAIGN in \"${CAMPAIGNS[@]}\"; do IFS=' '; read -ra ADGROUPS <<< \"$(curl -s -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'Content-Type: application/json' https://googleads.googleapis.com/v8/customers/$CUSTOMER/adGroups?campaignId=$CAMPAIGN)\" for ADGROUP in \"${ADGROUPS[@]}\"; do IFS=' '; read -ra KEYWORDS <<< \"$(curl -s -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'Content-Type: application/json' https://googleads.googleapis.com/v8/customers/$CUSTOMER/adGroupCriteria?adGroupId=$ADGROUP&criterionType=KEYWORD)\" for KEYWORD in \"${KEYWORDS[@]}\"; do IFS=' '; read -ra COST <<< \"$(curl -s -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'Content-Type: application/json' https://googleads.googleapis.com/v8/customers/$CUSTOMER/keywordStats?resourceName=$KEYWORD)\" COST_YTD=\"$(echo $COST | jq -r '.metrics.costMicros')/1000000\" IMP_YTD=\"$(echo $COST | jq -r '.metrics.impressions')\" if [ \"$COST_YTD\" != \"null\" ] && [ \"$COST_YTD\" != \"\" ] && [ -z \"$(echo \"$COST_YTD==0\" | bc -l)\" ]; then ROI=\"$(echo \"scale=d; $REVENUE_YTD/$COST_YTD\" | bc -l)\" if [ \"$(echo \"$ROI>$TARGET_ROI\" | bc -l)\" == \"1\" ]; then bid=\"$(echo \"scale=2; ($MAX_BID+$MIN_BID)/2\" | bc -l)\" else bid=\"$(echo \"scale=2; $COST_YTD*$(echo \"scale=2; $TARGET_ROI/1\" | bc -l)/$IMP_YTD\" | bc -l)\" \t\t bid=\"$(echo \"if ($bid>$MAX_BID) $MAX_BID else $bid\" | bc )\" \t\t bid=\"$(echo \"if ($bid<$MIN_BID) $MIN_BID else $bid\" | bc )\" fi else bid=$MAX_BID fi curl -s \\ -H \"Authorization: Bearer $ACCESS_TOKEN\" \\ -H \"Content-Type: application/json\" \\ -X PUT \\ https://googleads.googleapis.com/v8/customers/$CUSTOMER/adGroupCriteria/$KEYWORD \\ -d '{ \"adGroup\": \"'$ADGROUP'\", \"criterion\": \"'${KEYWORD%%:*}'\": \"'${KEYWORD##*:}'\", \"'$BIDDING_STRATEGY'\": {\"targetCpa\": {\"micros\": \"'$bid'0000000\

版权声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。