Essayez d'utiliser l'API Wunderlist en Python

J'ai essayé de toucher l'API de Wunderlist, qui est célèbre comme application de gestion de tâches, en Python. L'API Document est également bien écrite, donc je pense que c'est une API facile à utiliser. OAuth2 est utilisé pour l'authentification.

1. Préparation

La condition minimale est d'avoir votre propre compte Wunderlist. Tout d'abord, connectez-vous à la page suivante en utilisant votre compte. https://developer.wunderlist.com/

Cliquez ensuite sur ENREGISTRER VOTRE APP スクリーンショット 2015-11-13 15.17.05.png

L'écran d'enregistrement apparaîtra, alors entrez les informations requises et cliquez sur ENREGISTRER. Vous pouvez le modifier plus tard, mais vous devez entrer le NOM, l'URL de l'application et l'URL de l'AUTH CALLBACK. スクリーンショット 2015-11-13 15.21.26.png

Ensuite, vous pouvez obtenir l'ID CLIENT et le SECRET CLIENT. スクリーンショット 2015-11-13 15.21.52.png

Cette fois, par souci de simplicité, procurez-vous le JETON D'ACCÈS pour votre compte. Cliquez sur CRÉER UN JETON D'ACCÈS. スクリーンショット 2015-11-13 15.32.46.png

Vous avez besoin de deux éléments, l'ID CLIENT et le JETON D'ACCÈS, pour obtenir les informations de votre compte. Maintenant que nous avons les informations nécessaires, obtenons immédiatement les informations utilisateur.

J'ai utilisé une bibliothèque appelée Requests-Oauthlib pour l'authentification oauth2. Les détails de l'authentification peuvent être trouvés ici [https://developer.wunderlist.com/documentation/concepts/authorization). Ce n'est pas grave si vous ajoutez X-Client-ID et X-Access-Token aux informations d'en-tête demandées.


from requests_oauthlib import OAuth2Session
import json

client_id = "YOUR CLIENT ID"
access_token = "YOUR ACCESS TOKEN"
url = "https://a.wunderlist.com/api/v1/user"
params = {}

wunderlist = OAuth2Session()
wunderlist.headers['X-Client-ID'] = client_id
wunderlist.headers['X-Access-Token'] = access_token
req = wunderlist.get(url, params=params)

if req.status_code == 200:
    user = json.loads(req.text)
    print user['name']
else:
    print ("Error: %d" % req.status_code)

Avez-vous vu votre nom d'utilisateur en toute sécurité?

2. Appuyez sur l'API

Essayez d'obtenir une liste de listes

https://developer.wunderlist.com/documentation/endpoints/list

Changer l'URL

url = "https://a.wunderlist.com/api/v1/lists"

L'identifiant dans la liste est utilisé pour CRUD la tâche.

req = wunderlist.get(url, params=params)

if req.status_code == 200:
    lists = json.loads(req.text)
    for list in lists:
        print list["id"], list["title"].encode('utf-8')
else:
    print ("Error: %d" % req.status_code)

b. Créer une tâche

Modifiez l'URL et les paramètres. À propos, il semble que le papier toilette soit le plus souvent inscrit sur la liste de courses. (Il ne fait aucun doute qu'il s'agit d'informations provenant de la personne au siège social.)

url = "https://a.wunderlist.com/api/v1/tasks"
params = {
    "list_id": "ID de la liste d'achats", #integer
    "title": "Papier toilette", #string
}

Cette fois, c'est POST au lieu de GET. Le status_code change également.

req = wunderlist.post(url, json=params)

if req.status_code == 201:
    print "New task was successfully created."
else:
    print ("Error: %d" % req.status_code)

Ce n'est pas grave si vous regardez votre Wunderlist et ajoutez du papier toilette à votre liste de courses.

c. Terminez la tâche

Ceci est une mise à jour de la tâche. Disons que vous avez acheté le papier toilette que vous venez d'ajouter.

Modifiez l'URL et les paramètres.

url = "https://a.wunderlist.com/api/v1/tasks/"
params = {
    "revision": 1, #Fondamentalement, 1 est correct
    "completed": True,
}
task_id = "ID de papier toilette"
url += task_id

Nous utilisons une fonction appelée PATCH.

req = wunderlist.patch(url, json=params)

if req.status_code == 200:
    print "Task was successfully completed."
else:
    print ("Error: %d" % req.status_code)

Vérifiez la Wunderlist pour vous assurer que la tâche de papier toilette est terminée.

L'identifiant d'une tâche ou d'une liste peut être vu en un coup d'œil en regardant l'url de la version web de Wunderlist.

Recommended Posts

Essayez d'utiliser l'API Wunderlist en Python
Essayez d'utiliser l'API Kraken avec Python
Essayez d'utiliser l'API BitFlyer Ligntning en Python
Essayez d'utiliser l'API DropBox Core avec Python
Tweet à l'aide de l'API Twitter en Python
Essayez d'utiliser l'API Twitter
Essayez d'utiliser l'API Twitter
Essayez d'utiliser l'API PeeringDB 2.0
Essayez d'utiliser l'API ChatWork et l'API Qiita en Python
Paramètres initiaux lors de l'utilisation de l'API foursquare avec python
Utiliser l'API de recherche de la Bibliothèque du Parlement national en Python
Obtenir l'API arXiv en Python
Frappez l'API Sesami en Python
Essayez d'utiliser l'API de Pleasant (python / FastAPI)
Essayez d'utiliser LevelDB avec Python (plyvel)
Accédez à l'API Web en Python
Essayez d'utiliser l'API d'action de Python argparse
Essayez d'utiliser le module Python Cmd
Accéder à l'API Twitter avec Python
Essayez d'utiliser LeapMotion avec Python
Fonctionnement de la souris à l'aide de l'API Windows en Python
Essayez d'utiliser la bande HL dans l'ordre
Obtenez des données Youtube en Python à l'aide de l'API Youtube Data
Essayez rapidement l'API Face de Microsoft en Python
Essayez d'accéder à l'API Spotify dans Django.
Essayez d'utiliser FireBase Cloud Firestore avec Python pour le moment
API Evernote en Python
Essayez gRPC en Python
API C en Python 3
Essayez 9 tranches en Python
Essayez d'utiliser Tweepy [Python2.7]
Python: essayez d'utiliser l'interface utilisateur sur Pythonista 3 sur iPad
Obtenir l'URL de l'image à l'aide de l'API Flickr en Python
Essayez d'utiliser le framework Web Python Tornado Partie 1
Conseils pour accéder à l'API ATND avec Python
Jugons les émotions à l'aide de l'API Emotion en Python
Pré-traiter l'index en Python à l'aide de ScriptUpdateProcessor de Solr
Essayez d'utiliser le module de collections (ChainMap) de python3
Essayez d'utiliser le framework Web Python Tornado Partie 2
Essayez d'implémenter la méthode Monte Carlo en Python
Accédez à l'API Firebase Dynamic Links en Python
Essayez d'accéder à l'API YQL directement depuis Python 3
Hit API de Mastodon en Python
Importez un fichier JPG à l'aide de l'API Google Drive en Python
[Python] Essayez d'utiliser le canevas de Tkinter
Trouver des erreurs en Python
[AWS IoT] Enregistrer des éléments dans AWS IoT à l'aide du SDK AWS IoT Python
Essayez d'utiliser Kubernetes Client -Python-
Déterminer le seuil à l'aide de la méthode P-tile en python
Obtenez des données LEAD à l'aide de l'API REST de Marketo en Python
Essayez LINE Notify avec Python
Envoyez et recevez Gmail via l'API Gmail en utilisant Python
Essayez de supprimer des tweets en masse à l'aide de l'API de Twitter
OpenVINO utilisant l'API Python d'Inference Engine dans un environnement PC
Implémentons Yuma dans Python 3
API Blender Python dans Houdini (Python 3)