def downloadAdGroupReport(start_date, end_date):
output = io.StringIO()
# Initialize appropriate service.
adwords_client = adwords.AdWordsClient.LoadFromStorage()
report_downloader = adwords_client.GetReportDownloader(version='v201705')
# Create report query.
report_query = ('SELECT AdGroupId, AdGroupName, CampaignName, CpcBid, Week, Device, Clicks, AllConversions '
'FROM ADGROUP_PERFORMANCE_REPORT '
#'WHERE AdGroupStatus IN [ENABLED] '
'DURING '+start_date+','+end_date)
# Write query result to output file
report_downloader.DownloadReportWithAwql(
report_query,
'CSV',
output,
client_customer_id='XXX-XXX-XXXX’', # denotes which adw account to pull from
skip_report_header=True,
skip_column_header=False,
skip_report_summary=True,
include_zero_impressions=False)
output.seek(0)
df = pd.read_csv(output)
return df