@@ -101,22 +101,32 @@ def download_data_sets(api_client: AdWordsApiClient):
101
101
api_client: AdWordsApiClient
102
102
103
103
"""
104
+
105
+ predicates = [{'field' : 'Status' ,
106
+ 'operator' : 'IN' ,
107
+ 'values' : ['ENABLED' ,
108
+ 'PAUSED' ,
109
+ 'DISABLED' ]
110
+ }, {
111
+ 'field' : 'Impressions' ,
112
+ 'operator' : 'GREATER_THAN' ,
113
+ 'values' : [0 ]
114
+ }]
115
+
116
+ if config .ignore_removed_campaigns ():
117
+ predicates .append ({
118
+ 'field' : 'CampaignStatus' ,
119
+ 'operator' : 'NOT_EQUALS' ,
120
+ 'values' : 'REMOVED'
121
+ })
122
+
104
123
download_performance (api_client ,
105
124
PerformanceReportType .AD_PERFORMANCE_REPORT ,
106
125
fields = ['Date' , 'Id' , 'AdGroupId' , 'Device' , 'AdNetworkType2' ,
107
126
'ActiveViewImpressions' , 'AveragePosition' ,
108
127
'Clicks' , 'Conversions' , 'ConversionValue' ,
109
128
'Cost' , 'Impressions' ],
110
- predicates = [{'field' : 'Status' ,
111
- 'operator' : 'IN' ,
112
- 'values' : ['ENABLED' ,
113
- 'PAUSED' ,
114
- 'DISABLED' ]
115
- }, {
116
- 'field' : 'Impressions' ,
117
- 'operator' : 'GREATER_THAN' ,
118
- 'values' : [0 ]
119
- }]
129
+ predicates = predicates
120
130
)
121
131
122
132
download_account_structure (api_client )
@@ -316,18 +326,31 @@ def get_ad_data(api_client: AdWordsApiClient, client_customer_id: int) -> [{}]:
316
326
logging .info ('get ad data for account {}' .format (client_customer_id ))
317
327
318
328
api_client .SetClientCustomerId (client_customer_id )
329
+
330
+ predicates = [
331
+ {
332
+ 'field' : 'Status' ,
333
+ 'operator' : 'IN' ,
334
+ 'values' : ['ENABLED' ,
335
+ 'PAUSED' ,
336
+ 'DISABLED' ]
337
+ }
338
+ ]
339
+
340
+ if config .ignore_removed_campaigns ():
341
+ predicates .append ({
342
+ 'field' : 'CampaignStatus' ,
343
+ 'operator' : 'NOT_EQUALS' ,
344
+ 'values' : 'REMOVED'
345
+ })
346
+
319
347
report = _download_adwords_report (api_client ,
320
348
report_type = 'AD_PERFORMANCE_REPORT' ,
321
349
fields = ['Id' , 'AdGroupId' , 'AdGroupName' ,
322
350
'CampaignId' , 'CampaignName' ,
323
351
'Labels' , 'Headline' , 'AdType' ,
324
352
'Status' ],
325
- predicates = {'field' : 'Status' ,
326
- 'operator' : 'IN' ,
327
- 'values' : ['ENABLED' ,
328
- 'PAUSED' ,
329
- 'DISABLED' ]
330
- })
353
+ predicates = predicates )
331
354
332
355
ad_data = []
333
356
for row in report :
0 commit comments