2016-07-28 8 views
1

Dies ist das erste Mal, dass ich mich mit Facebook-Anmeldeinformationen anmelde. Ich möchte Einträge in Airbnb über mein Konto abfragen können. Mein ursprüngliches Konto in Airbnb ist über Facebook Login. Hier ist die Beispielanfrage auf der Airbnb-Seite: http://airbnbapi.org/#login-by-facebook.Verwenden der Airbnb-API mit Facebook Anmelden

Ich bin mir nicht sicher, wo ich meine client_id und Facebooks Zugriffs-Token bekommen kann. Obwohl es auf https://developers.facebook.com/docs/facebook-login/access-tokens zeigt, um das Benutzerzugriffstoken zu erhalten, aber wenn ich es richtig verstehe, muss ich eine App erstellen. Ich bin mir nicht sicher, welcher Authentifizierungsfluss für die Verwendung der Airbnb-API erforderlich ist.

Ich habe Airbnb-Dokumente bereits nach client_id gesucht, aber nutzlos.

Hier ist, was ich bisher:

import requests 
import json 

API_URL = "https://api.airbnb.com" 
LISTING_ENDPOINT= "https://api.airbnb.com/v2/search_results" 

post_query = { 
    "client_id": "I HAVE NO IDEA WHERE TO GET IT", 
    "locale": "en-US", 
    "currency":"USD", 
    "assertion_type":"https://graph.facebook.com/me" 
    "assertion":"HOW SHOULD I GET THIS ONE?", 
    "prevent_account_creation":True 
} 

# I think this should be able to log me in and I should be able to query listings 
_ = requests.post(API_URL, post_query).json() 

query = { 
    "client_id":"FROM ABOVE", 
    "user_lat": "40.00", 
    "user_long":"-54.31" 
} 


listings = requests.get(LISTING_ENDPOINT, json=query).json() 
+0

Es scheint keine öffentliche API zu geben, aber der Zugriff auf die private scheint trivial –

+0

Wie kann ich meine Client-ID bekommen? – mousecoder

Antwort

1

ich über das gleiche Problem wie Sie gekommen sind. Ich finde es endlich heraus. Das Tool, das ich verwendete, ist die erweiterte Funktion der Anforderungsbibliothek, nämlich Session(), zum Speichern von Cookies. Der wichtigste Teil für die Anmeldung mit einem Drittanbieter-Konto ist es, den Link zu finden, den wir brauchen, um die Cookies zu posten. Das Folgende ist mein Code.

Verwandte Themen