添加更多地点标准 [英] Adding More locations criteria

查看:68
本文介绍了添加更多地点标准的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好,

如何在唯一的通话请求中添加多个地理位置条件?

how could i add more than one location criteria in an only call request?

遵循示例python代码:

Following the example python code:

            campaign_criterions = campaign_service.factory.create('ArrayOfCampaignCriterion')
            campaign_location_criterion = set_elements_to_none(campaign_service.factory.create('BiddableCampaignCriterion'))
            campaign_location_criterion.Type = 'BiddableCampaignCriterion'
            campaign_location_criterion.CampaignId = campaign_id

            #adding bid for location
            bid_multiplier = set_elements_to_none(campaign_service.factory.create('BidMultiplier'))
            bid_multiplier.Type = 'BidMultiplier'
            bid_multiplier.Multiplier = 0
            campaign_location_criterion.CriterionBid = bid_multiplier

            # adding location
            location_criterion = set_elements_to_none(campaign_service.factory.create('LocationCriterion'))
            location_criterion.Type = 'LocationCriterion'
            location_criterion.LocationId = 1815
            location_criterion.LocationType = 'City'
            
            campaign_location_criterion.Criterion = location_criterion
            
            campaign_criterions.CampaignCriterion.append(campaign_location_criterion)
            #print(campaign_criterions.CampaignCriterion)

            output_status_message("-----\nAddCampaignCriterions:")
            add_campaign_criterions_response = campaign_service.AddCampaignCriterions(
                CampaignCriterions=campaign_criterions,
                CriterionType='Targets'
            )
            campaign_criterion_ids = {
                'long': add_campaign_criterions_response.CampaignCriterionIds['long']
                if add_campaign_criterions_response.CampaignCriterionIds['long'] else None
            }

我需要传递一个位置ID数组,但是我会在唯一的请求电话中应用标准

I would need to pass an array of location id, but i would apply criteria in an only request call

谢谢,

Ale

推荐答案

Hi Ale,

Hi Ale,

campaign_criterions=campaign_service.factory.create('ArrayOfCampaignCriterion')

us_campaign_location_criterion=set_elements_to_none(campaign_service.factory.create('BiddableCampaignCriterion'))
us_campaign_location_criterion.Type='BiddableCampaignCriterion'
us_campaign_location_criterion.CampaignId=campaign_ids['long'][0]
us_bid_multiplier=set_elements_to_none(campaign_service.factory.create('BidMultiplier'))
us_bid_multiplier.Type='BidMultiplier'
us_bid_multiplier.Multiplier=0
us_campaign_location_criterion.CriterionBid=us_bid_multiplier                
us_location_criterion=set_elements_to_none(campaign_service.factory.create('LocationCriterion'))
us_location_criterion.Type='LocationCriterion'
# United States
us_location_criterion.LocationId=190
us_campaign_location_criterion.Criterion=us_location_criterion
campaign_criterions.CampaignCriterion.append(us_campaign_location_criterion)

canada_campaign_location_criterion=set_elements_to_none(campaign_service.factory.create('BiddableCampaignCriterion'))
canada_campaign_location_criterion.Type='BiddableCampaignCriterion'
canada_campaign_location_criterion.CampaignId=campaign_ids['long'][0]
canada_bid_multiplier=set_elements_to_none(campaign_service.factory.create('BidMultiplier'))
canada_bid_multiplier.Type='BidMultiplier'
canada_bid_multiplier.Multiplier=0
canada_campaign_location_criterion.CriterionBid=canada_bid_multiplier                
canada_location_criterion=set_elements_to_none(campaign_service.factory.create('LocationCriterion'))
canada_location_criterion.Type='LocationCriterion'
# Canada
canada_location_criterion.LocationId=32
canada_campaign_location_criterion.Criterion=canada_location_criterion
campaign_criterions.CampaignCriterion.append(canada_campaign_location_criterion)

output_status_message("-----\nAddCampaignCriterions:")
add_campaign_criterions_response = campaign_service.AddCampaignCriterions(
    CampaignCriterions=campaign_criterions,
    CriterionType='Targets'
)




以下是生成的SOAP请求:




Here is the resulting SOAP request:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:ns0="https://bingads.microsoft.com/CampaignManagement/v13" xmlns:ns1="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="https://bingads.microsoft.com/CampaignManagement/v13" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
   <SOAP-ENV:Header>
      <tns:AuthenticationToken>YourAccessTokenGoesHere</tns:AuthenticationToken>
      <tns:CustomerAccountId>YourAccountIdGoesHere</tns:CustomerAccountId>
      <tns:CustomerId>YourCustomerIdGoesHere</tns:CustomerId>
      <tns:DeveloperToken>YourDeveloperTokenGoesHere</tns:DeveloperToken>
   </SOAP-ENV:Header>
   <ns1:Body>
      <ns0:AddCampaignCriterionsRequest>
         <ns0:CampaignCriterions>
            <ns0:CampaignCriterion xsi:type="ns0:BiddableCampaignCriterion">
               <ns0:CampaignId>YourCampaignIdGoesHere</ns0:CampaignId>
               <ns0:Criterion xsi:type="ns0:LocationCriterion">
                  <ns0:Type>LocationCriterion</ns0:Type>
                  <ns0:LocationId>190</ns0:LocationId>
               </ns0:Criterion>
               <ns0:Type>BiddableCampaignCriterion</ns0:Type>
               <ns0:CriterionBid xsi:type="ns0:BidMultiplier">
                  <ns0:Type>BidMultiplier</ns0:Type>
                  <ns0:Multiplier>0</ns0:Multiplier>
               </ns0:CriterionBid>
            </ns0:CampaignCriterion>
            <ns0:CampaignCriterion xsi:type="ns0:BiddableCampaignCriterion">
               <ns0:CampaignId>YourCampaignIdGoesHere</ns0:CampaignId>
               <ns0:Criterion xsi:type="ns0:LocationCriterion">
                  <ns0:Type>LocationCriterion</ns0:Type>
                  <ns0:LocationId>32</ns0:LocationId>
               </ns0:Criterion>
               <ns0:Type>BiddableCampaignCriterion</ns0:Type>
               <ns0:CriterionBid xsi:type="ns0:BidMultiplier">
                  <ns0:Type>BidMultiplier</ns0:Type>
                  <ns0:Multiplier>0</ns0:Multiplier>
               </ns0:CriterionBid>
            </ns0:CampaignCriterion>
         </ns0:CampaignCriterions>
         <ns0:CriterionType>Targets</ns0:CriterionType>
      </ns0:AddCampaignCriterionsRequest>
   </ns1:Body>
</SOAP-ENV:Envelope>




$
我希望这会有所帮助!



I hope this helps!


这篇关于添加更多地点标准的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆