sto cercando di ottenere l'elenco di mappe create da me in Google Maps, e l'API di Google Maps dice il seguente:Utilizzando GET e POST con autorizzazione HTTP in Python
Recupero di un elenco di mappe
L'API Maps dati fornisce un feed che elenca le mappe create da un particolare utente; questo feed è noto come "metafeed". Un tipico API metafeed mappe dei dati è una richiesta GET della forma seguente:
Le richieste di alimentazione di default tutte le mappe associati all'utente autenticato
GET http://maps.google.com/maps/feeds/maps/default/full
Authorization: GoogleLogin auth="authorization_token"
Le richieste metafeed standard di tutte le mappe associati con l'UserID associato
Nota che entrambe le richieste GET richiedono un'intestazione HTTP di autorizzazione, passando un token AuthSub o GoogleLogin, a seconda dello schema di autenticazione che hai implementato. (Il token GoogleLogin corrisponde al processo di autenticazione ClientLogin.)
non ho idea di come creare richiesta HTTP con l'autorizzazione intestazioni HTTP. Ho già il codice per ottenere il authorization_token
, che è la seguente:
# coding: utf-8
import urllib, re, getpass
# http://code.google.com/intl/pt-BR/apis/maps/documentation/mapsdata/developers_guide_protocol.html#ClientLogin
username = 'heltonbiker'
senha = getpass.getpass('Senha do usuário ' + username + ':')
dic = {
'accountType': 'GOOGLE',
'Email': (username + '@gmail.com'),
'Passwd': senha,
'service': 'local',
'source': 'helton-mapper-1'
}
url = 'https://www.google.com/accounts/ClientLogin?' + urllib.urlencode(dic)
output = urllib.urlopen(url).read()
authid = output.strip().split('\n')[-1].split('=')[-1]
Ho anche preso uno sguardo al httplib
documenti, ma non ho capito molto (io non sono un programmatore professionista).
Qualsiasi indizio?
Hai colpito il posto! Sapevo che ci sarebbe stato un modo semplice per farlo. Ora per la deprecazione dell'API di Maps Data, alcuni siti dicono una cosa, alcuni dicono altri ... Vediamo se funziona! – heltonbiker
Sì, funziona, torno una stringa XML con informazioni su tutte le mie mappe, ma io o non so che cosa fare con i dati, e anche l'API è davvero deprecato. Così ho continuare ad usare espressioni regolari per ottenere i 'MapID's da questa stringa e automatizzare mappa il download in formato KML:' 'http://maps.google.com.br/maps/ms?msid=USERID.MAPID&msa=0&output= kml' – heltonbiker