Décrit comment obtenir le nombre de visites sur chaque page à l'aide de ReportingAPI + Cloud Functions. L'API Reporting v4 (google-api-python-client) est utilisée pour récupérer les données Google Analytics.
google-api-python-client: 1.12.2 oauth2client: 4.1.3
Activez l'API Reporting v4 depuis la Console API Google . À ce stade, téléchargez la clé privée et notez l'adresse e-mail du compte de service.
[email protected]
Ajoutez l'adresse e-mail de Google Analytics sous [Administration]> [Afficher la gestion des utilisateurs]> [Ajouter un utilisateur]. Faire.
Créez une fonction à partir des fonctions cloud de GCP et collez la source suivante pour terminer
main.py
from apiclient.discovery import build
from oauth2client.service_account import ServiceAccountCredentials
SCOPES = ['https://www.googleapis.com/auth/analytics.readonly']
KEY_FILE_LOCATION = 'Chemin du fichier Json'
VIEW_ID = 'VIEW_ID'
def initialize_analyticsreporting():
credentials = ServiceAccountCredentials.from_json_keyfile_name(
KEY_FILE_LOCATION, SCOPES)
analytics = build('analyticsreporting', 'v4', credentials=credentials)
return analytics
def get_report(analytics):
return analytics.reports().batchGet(
body={
'reportRequests': [
{
'viewId': VIEW_ID,
'dateRanges': [{'startDate': '7daysAgo', 'endDate': 'today'}],
'metrics': [{'expression': 'ga:uniquePageviews'}],
'dimensions': [{'name': 'ga:pagePath'}]
}]
}
).execute()
def print_response(response):
for report in response.get('reports', []):
columnHeader = report.get('columnHeader', {})
dimensionHeaders = columnHeader.get('dimensions', [])
metricHeaders = columnHeader.get(
'metricHeader', {}).get('metricHeaderEntries', [])
for row in report.get('data', {}).get('rows', []):
dimensions = row.get('dimensions', [])
dateRangeValues = row.get('metrics', [])
for i, values in enumerate(dateRangeValues):
for dimension, value in zip(dimensions, values.get('values')):
print(dimension + ':' + value)
def main(event, context):
analytics = initialize_analyticsreporting()
response = get_report(analytics)
print_response(response)
requirements.txt
google-api-python-client==1.12.2
oauth2client==4.1.3
J'étais nouveau dans Python, GCP et Analytics, donc j'ai beaucoup appris. Cette fois, je voulais une fonction de classement pour le blog, alors je l'ai fait, mais en quoi le prix diffère-t-il du comptage du nombre d'accès au Fire Store? Il semble préférable d'acquérir des connaissances en Analytics avant de faire l'API Reporting (rires)
Recommended Posts