raise AttributeError(str(ex)) AttributeError: 'campaign_conversion_goal'

33 views
Skip to first unread message

Kieran Eddy

unread,
Mar 10, 2022, 9:58:54 PM3/10/22
to Google Ads API and AdWords API Forum
def update_goal(client,customer_id,campaign_resource_name):
# 以下是Campaign级别的conversoin goal设置
conversion_goal_campaign_config_service = client.get_service("ConversionGoalCampaignConfigService")
conversion_goal_campaign_config_operation = client.get_type("ConversionGoalCampaignConfigOperation")
# conversion_goal_campaign_config= conversion_goal_campaign_config_operation.uptate
# campaign_resource_name=campaign_resource_name
#调用自定义方法,获取第一个全局的coustom_conversion_goal
custom_conversion_goal = find_custom_conversion_goal(client,customer_id)
print(f"33333333333333333333333333333")
print(f"{custom_conversion_goal}")
# 为operation.update赋值
conversion_goal_campaign_config = conversion_goal_campaign_config_operation.update

print(campaign_resource_name)
conversion_goal_campaign_config.campaign = campaign_resource_name
conversion_goal_campaign_config.goal_config_level = client.enums.GoalConfigLevelEnum.CAMPAIGN
conversion_goal_campaign_config.custom_conversion_goal = custom_conversion_goal.name
conversion_goal_campaign_config.resource_name= campaign_resource_name
# client.copy_from(
# conversion_goal_campaign_config_operation.update_mask,
# protobuf_helpers.field_mask(None, conversion_goal_campaign_config._pb),
# )
print("44444444444")
print(f"{conversion_goal_campaign_config_operation.update_mask}")
# 为update_mask属性赋值,从customer_conversion_goal中构造update_mask
mutate_operation = client.get_type("MutateOperation")
conversion_goal_campaign_config = (
mutate_operation.campaign_conversion_goal.update
)
field_mask= protobuf_helpers.field_mask(None,conversion_goal_campaign_config._pb)
client.copy_from(
conversion_goal_campaign_config_operation.update_mask,field_mask
)
# 调用方法
response=conversion_goal_campaign_config_service.mutate_conversion_goal_campaign_configs(
customer_id=customer_id, operations=[conversion_goal_campaign_config_operation])
resource_name = response.results[0].resource_name
return resource_name


# 返回第一个custom_conversion_goal(通过管理后台手工创建)
def find_custom_conversion_goal(client, customer_id):
ga_service = client.get_service("GoogleAdsService")
query = """
SELECT
custom_conversion_goal.resource_name,
custom_conversion_goal.status,
custom_conversion_goal.conversion_actions
FROM custom_conversion_goal

"""

search_request = client.get_type("SearchGoogleAdsRequest")
search_request.customer_id = customer_id
search_request.query = query

search_response = ga_service.search(request=search_request)
return search_response.results[0].custom_conversion_goal

Google Ads API Forum Advisor

unread,
Mar 11, 2022, 4:34:31 AM3/11/22
to 05292...@gmail.com, adwor...@googlegroups.com
Hi Kieran,

Thank you for posting.

In order for our team to investigate and address your concern, could you provide more details to it?

Regards,
Google Logo
Ernie John
Google Ads API Team
 


ref:_00D1U1174p._5004Q2XnXfg:ref
Reply all
Reply to author
Forward
0 new messages