Versuchen Sie es mit der Wunderlist-API in Python

Ich habe versucht, die API von Wunderlist, die als Task-Management-Anwendung bekannt ist, in Python zu berühren. Die API Dokument ist ebenfalls gut geschrieben, daher denke ich, dass es eine einfach zu verwendende API ist. OAuth2 wird zur Authentifizierung verwendet.

1. Vorbereitung

Die Mindestanforderung ist ein eigenes Wunderlist-Konto. Melden Sie sich zunächst mit Ihrem Konto auf der folgenden Seite an. https://developer.wunderlist.com/

Klicken Sie dann auf IHRE APP REGISTRIEREN スクリーンショット 2015-11-13 15.17.05.png

Der Registrierungsbildschirm wird angezeigt. Geben Sie die erforderlichen Informationen ein und klicken Sie auf SPEICHERN. Sie können es später ändern, müssen jedoch den NAMEN, die APP-URL und die AUTH CALLBACK-URL eingeben. スクリーンショット 2015-11-13 15.21.26.png

Dann können Sie CLIENT ID und CLIENT SECRET erhalten. スクリーンショット 2015-11-13 15.21.52.png

Dieses Mal erhalten Sie der Einfachheit halber den ACCESS TOKEN für Ihr Konto. Klicken Sie auf CREATE ACCESS TOKEN. スクリーンショット 2015-11-13 15.32.46.png

Sie benötigen zwei Dinge, CLIENT ID und ACCESS TOKEN, um Ihre Kontoinformationen zu erhalten. Nachdem wir die erforderlichen Informationen haben, erhalten wir sofort die Benutzerinformationen.

Ich habe eine Bibliothek namens Requests-Oauthlib für die oauth2-Authentifizierung verwendet. Details zur Authentifizierung finden Sie hier [https://developer.wunderlist.com/documentation/concepts/authorization]. Es ist in Ordnung, wenn Sie den angeforderten Header-Informationen X-Client-ID und X-Access-Token hinzufügen.


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)

Haben Sie Ihren Benutzernamen sicher gesehen?

2. Berühren Sie die API

Versuchen Sie, eine Liste mit Listen zu erhalten

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

URL ändern

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

Die ID in der Liste wird verwendet, um die Aufgabe zu CRUDEN.

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. Erstellen Sie eine Aufgabe

Ändern Sie URL und Parameter. Übrigens scheint Toilettenpapier am häufigsten auf der Einkaufsliste zu stehen. (Es besteht kein Zweifel, dass es sich um Informationen der Person in der Zentrale handelt.)

url = "https://a.wunderlist.com/api/v1/tasks"
params = {
    "list_id": "Einkaufslisten-ID", #integer
    "title": "Toilettenpapier", #string
}

Diesmal ist es POST statt GET. Der status_code ändert sich ebenfalls.

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

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

Es ist in Ordnung, wenn Sie sich Ihre Wunderliste ansehen und Toilettenpapier zu Ihrer Einkaufsliste hinzufügen.

c. Schließen Sie die Aufgabe ab

Dies ist ein Task-Update. Angenommen, Sie haben das gerade hinzugefügte Toilettenpapier gekauft.

Ändern Sie URL und Parameter.

url = "https://a.wunderlist.com/api/v1/tasks/"
params = {
    "revision": 1, #Grundsätzlich ist 1 okay
    "completed": True,
}
task_id = "Toilettenpapier ID"
url += task_id

Wir verwenden eine Funktion namens PATCH.

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

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

Überprüfen Sie die Wunderliste, um sicherzustellen, dass die Toilettenpapieraufgabe abgeschlossen ist.

Die ID einer Aufgabe oder Liste kann auf einen Blick anhand der URL der Webversion von Wunderlist angezeigt werden.

Recommended Posts

Versuchen Sie es mit der Wunderlist-API in Python
Versuchen Sie, die Kraken-API mit Python zu verwenden
Versuchen Sie es mit der BitFlyer Ligntning API in Python
Versuchen Sie, die DropBox Core-API mit Python zu verwenden
Tweet mit der Twitter-API in Python
Versuchen Sie es mit der Twitter-API
Versuchen Sie es mit der Twitter-API
Versuchen Sie es mit der PeeringDB 2.0-API
Versuchen Sie, die ChatWork-API und die Qiita-API in Python zu verwenden
Grundeinstellungen bei Verwendung der foursquare-API mit Python
Verwenden Sie die Such-API der National Parliament Library in Python
Abrufen der arXiv-API in Python
Klicken Sie in Python auf die Sesami-API
Versuchen Sie es mit der Pleasant-API (Python / FastAPI).
Versuchen Sie es mit LevelDB mit Python (plyvel)
Klicken Sie auf die Web-API in Python
Versuchen Sie es mit der Aktions-API von Python argparse
Versuchen Sie es mit dem Python Cmd-Modul
Greifen Sie mit Python auf die Twitter-API zu
Versuchen Sie es mit LeapMotion mit Python
Mausbedienung mit Windows-API in Python
Versuchen Sie, das HL-Band der Reihe nach zu verwenden
Holen Sie sich Youtube-Daten in Python mithilfe der Youtube-Daten-API
Probieren Sie schnell die Microsoft Face API in Python aus
Versuchen Sie, die Spotify-API in Django zu aktivieren.
Versuchen Sie vorerst, FireBase Cloud Firestore mit Python zu verwenden
Evernote-API in Python
Versuchen Sie gRPC in Python
C-API in Python 3
Probieren Sie 9 Slices in Python aus
Versuchen Sie es mit Tweepy [Python2.7]
Python: Versuchen Sie, die Benutzeroberfläche von Pythonista 3 auf dem iPad zu verwenden
Holen Sie sich die Bild-URL mithilfe der Flickr-API in Python
Versuchen Sie es mit dem Python-Webframework Tornado Part 1
Tipps zum Erreichen der ATND-API mit Python
Lassen Sie uns Emotionen mithilfe der Emotions-API in Python beurteilen
Verarbeiten Sie den Index in Python mit dem ScriptUpdateProcessor von Solr vor
Versuchen Sie es mit dem Sammlungsmodul (ChainMap) von python3
Versuchen Sie es mit dem Python-Webframework Tornado Part 2
Versuchen Sie, die Monte-Carlo-Methode in Python zu implementieren
Klicken Sie in Python auf die Firebase Dynamic Links API
Versuchen Sie, direkt von Python 3 aus auf die YQL-API zuzugreifen
Hit Mastodons API in Python
Laden Sie eine JPG-Datei mit der Google Drive-API in Python hoch
[Python] Versuchen Sie, Tkinters Leinwand zu verwenden
Finde Fehler in Python
[AWS IoT] Registrieren Sie Dinge in AWS IoT mithilfe des AWS IoT Python SDK
Versuchen Sie es mit Kubernetes Client -Python-
Bestimmen Sie den Schwellenwert mithilfe der P-Tile-Methode in Python
Holen Sie sich LEAD-Daten mit der REST-API von Marketo in Python
Versuchen Sie LINE Notify mit Python
Senden und empfangen Sie Google Mail über die Google Mail-API mit Python
Versuchen Sie, Tweets mithilfe der Twitter-API in großen Mengen zu löschen
OpenVINO verwendet die Inference Engine Python API in einer PC-Umgebung
Lassen Sie uns Yuma in Python 3 implementieren
Blender Python API in Houdini (Python 3)