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.
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
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.
Ensuite, vous pouvez obtenir l'ID CLIENT et le SECRET CLIENT.
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.
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é?
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)
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.
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