[JAVA] Obtenez des vacances avec l'API Google Agenda

Résumé de l'article

Contexte

Étant donné que l'API Google Calendar est célèbre, il est facile de trouver un moyen de l'utiliser, mais j'ai eu un petit problème avec PHP et Python, alors je l'écrirai pour quelqu'un de semblable à moi.

Objectif

Réécrivez l'exemple de code officiel pour Maven pour obtenir les vacances. Un ingénieur faible qui est un nouveau diplômé depuis six mois écrit le contenu d'une manière facile à comprendre.

procédure

1. Créez un projet Maven (Reportez-vous à cette zone)

$ mvn archetype:generate \
  -DarchetypeArtifactId=maven-archetype-quickstart \
  -DinteractiveMode=false \
  -DgroupId={com.ikeponias} \
  -DartifactId={google-calendar-sample}

2. Téléchargez le fichier d'informations d'identification

-Sur la page Official Sample

  1. Cliquez sur "ACTIVER L'API GOOGLE CALENDAR"
スクリーンショット_2018-11-04_14_09_17.png 2. Cliquez sur "Sélectionner ou créer un projet" スクリーンショット_2018-11-04_14_09_54.png 3. Sélectionnez un projet existant ou sélectionnez "Créer un nouveau projet" et entrez le nom du projet 4. Cliquez sur "TÉLÉCHARGER LA CONFIGURATION CLIENT" スクリーンショット_2018-11-04_14_09_39.png 5. Placez le fichier `json` téléchargé dans le dossier` src / main / resources` du projet (probablement le dossier` resources` n'existe pas, alors créez-en un nouveau) 6. Renommez le fichier `json` placé en` credentials.json`

3. Copiez la source

  1. Renommez le fichier ʻApp.java dans src / mainenCalendarQuickstart.java`
  2. Accédez à CalendarQuickstart.java Copiez le contenu de CalendarQuickstart.java dans Official Sample

4. Modifiez le fichier source

  1. Ajoutez le nom du package à la première ligne de src / main / CalendarQuickstart.java (Cela dépend si la hiérarchie des dossiers a été modifiée, mais essentiellement le groupId lors de sa création. Je suis package com.ikeponias; Et ajouter)
  2. Modifiez l'argument passé à service.events (). List () dans la méthode main de src / main / CalendarQuickstart.java de primary à japanese__ja @ holiday.calendar.google.com. (Comme il s'agit d'une API pour obtenir des événements de calendrier, votre propre événement sortira si vous ne le faites pas, Référence)
スクリーンショット_2018-11-04_14_30_55.png

5. Modifiez pom.xml

  1. Ajoutez la dépendance suivante
  1. Ajoutez ʻexec-maven-pluginàplugin`

Ci-dessous mon exemple (junit est écrit lors de la création du projet)

  <dependencies>
    <!-- https://mvnrepository.com/artifact/com.google.api-client/google-api-client -->
    <dependency>
      <groupId>com.google.api-client</groupId>
      <artifactId>google-api-client</artifactId>
      <version>1.26.0</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.google.oauth-client/google-oauth-client-jetty -->
    <dependency>
      <groupId>com.google.oauth-client</groupId>
      <artifactId>google-oauth-client-jetty</artifactId>
      <version>1.26.0</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.google.apis/google-api-services-calendar -->
    <dependency>
      <groupId>com.google.apis</groupId>
      <artifactId>google-api-services-calendar</artifactId>
      <version>v3-rev355-1.25.0</version>
    </dependency>

    <!--Doit déjà exister lors de la génération du projet-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <!-- https://mvnrepository.com/artifact/org.codehaus.mojo/exec-maven-plugin -->
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.6.0</version>
        <executions>
          <execution>
            <goals>
              <goal>java</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <mainClass>com.ikeponias.CalendarQuickstart</mainClass>
        </configuration>
      </plugin>
    </plugins>
  </build>

6. Courir

  1. Exécutez mvn clean install dans le terminal
  2. Exécutez mvn exec: java
  3. Une liste de 10 jours fériés après la date d'exécution est sortie (lisez la source et la documentation officielle pour plus de détails)
Capture d'écran 04/11/2018 14.53.17.png 4. Après cela, si vous voulez refléter le changement de source, exécutez `mvn compile` puis` mvn exec: java`.

J'étais accro à

Écrivez les points auxquels vous êtes accro ci-dessous

J'obtiens une erreur 401 non autorisée

com.google.api.client.auth.oauth2.TokenResponseException: 401 Unauthorized

Raison

Parce que le jeton a expiré

Contre-mesures

Supprimez le dossier tokens et réexécutez (il peut être bon d'inclure un processus pour supprimer le dossier tokens au moment de l'exécution)

Aucun événement à venir trouvé.

Raison

L'argument passé à service.events (). List () dans la méthode main de src / main / CalendarQuickstart.java est primary.

Contre-mesures

Remplacez «principal» par «japonais__ja @ holiday.calendar.google.com»

Recommended Posts

Obtenez des vacances avec l'API Google Agenda
Obtenir des informations avec l'API Zabbix
Créez une carte thermique de tweet avec l'API Google Maps
Obtenez des commentaires et des abonnés avec l'API de données YouTube
Appelez l'API avec python3.
Obtenez un classement avec l'API Rakuten
Donnez des rendez-vous à d'autres avec l'API de calendrier LINE WORKS
Obtenez des données de l'API d'analyse avec le client API Google pour python
Obtenez des avis avec l'API googlemap de python
[Python] Accédez à l'API Google Translation
Obtenez la météo avec les requêtes Python
Obtenez la météo avec les requêtes Python 2
Accédez à l'API Etherpad-lite avec Python
Présentation de l'API Google Map avec rails
Obtenez le nombre de PV d'articles Qiita que vous avez publiés avec l'API
Obtenez des conversions et des revenus avec l'API Google Analytics et faites un rapport à Slack
Obtenez le volume de recherche, le CPC et la compétitivité du planificateur de mots clés avec l'API Google Ads
Accéder à l'API Docker Remote avec des requêtes
Reconnaissance vocale en streaming avec l'API Google Cloud Speech
Obtenez les débats parlementaires via l'API
Obtenez les données de l'API Google Fit en Python
Premiers pas avec l'outil de documentation Sphinx
Accédez à Google Agenda depuis l'application iOS
[Python] Obtenez des informations sur le package Python avec l'API PyPI
Jouez avec Dajare en utilisant l'API COTOHA
Obtenez des informations sur la monnaie virtuelle Coincheck avec l'API ♪
J'ai essayé d'obtenir le code d'authentification de l'API Qiita avec Python.
Obtenez des visites d'articles et des likes avec l'API Qiita + Python
J'ai essayé d'obtenir les informations sur le film de l'API TMDb avec Python
Tweetez régulièrement avec l'API Twitter Go language
[Python] Récupérez les fichiers dans le dossier avec Python
Obtenez les dernières informations AMI avec l'AWS CLI
Golang api obtenir
J'ai essayé "License OCR" avec l'API Google Vision
Obtenons les informations Wiki en utilisant l'API MediaWiki
Jusqu'à ce que vous utilisiez l'API Kaggle avec Colab
Obtenez des données sur le cours de l'action avec l'API Quandl [Python]
J'ai essayé d'utiliser l'API Google Cloud Vision
Comment utiliser l'API Google Cloud Translation
Obtenez un jeton d'accès pour l'API Pocket
J'ai essayé "Receipt OCR" avec l'API Google Vision
Obtenez l'objet et le corps de Gmail avec Python et l'API Gmail
Obtenez des étiquettes de données en les associant à l'API Google Cloud Vision lors de la prévisualisation d'images avec Rails
Une histoire sur un débutant Python essayant d'obtenir des résultats de recherche Google à l'aide de l'API
Importez le calendrier obtenu à partir de "Schedule-kun" dans Google Agenda
Jouez avec l'API de consommation d'énergie fournie par Yahoo
[Python] Récupérez le texte de la loi à partir de l'API e-GOV law
Calculez la valeur totale de plusieurs colonnes avec awk
Accédez à l'API Twitter après l'authentification Oauth avec Django
[Python] Obtenez les nombres dans l'image graphique avec OCR
Obtenez l'image de "Suzu Hirose" par recherche d'images Google.
Obtenir le calendrier de l'API Garoon SOAP avec Python + Zeep
[Boto3] Rechercher des utilisateurs Cognito avec l'API List Users
Obtenez des résultats au format dict avec Python psycopg2
[Python] Obtenez des données insight à l'aide de l'API Google My Business
Obtenez swagger.json avec Flask-RESTX (Flask-RESTPlus) sans démarrer le serveur
Essayez d'obtenir le contenu de Word avec Golang