Dostajesz 302 Moved Temporarily
bo trzeba być uwierzytelnione: Google przekierowuje Cię do swojej strony logowania.
Po uwierzytelnieniu dane logowania do Google są przechowywane w plikach cookie przeglądarki. Jeśli chcesz pobrać link Historia lokalizacji mapy Google, musisz podać pliki cookie przeglądarki pod numerem curl
. Opcja -b
z curl
umożliwia użycie cookies.txt
w odniesieniu do Netscape/Mozilla cookie file format.
Każdy wiersz cookies.txt
ma siedem rozdzielone tabulatorami pola:
- domen - domenę, stworzony i że może odczytać zmienną.
- flag - Wartość PRAWDA/FAŁSZ wskazująca, czy wszystkie komputery w danej domenie mają dostęp do zmiennej. Ta wartość jest ustawiana automatycznie przez przeglądarkę, w zależności od wartości ustawionej dla domeny.
- ścieżka - Ścieżka wewnątrz domeny, dla której zmienna jest ważna.
- bezpieczne - Wartość TRUE/FALSE wskazująca, czy wymagane jest bezpieczne połączenie z domeną, aby * uzyskać dostęp do zmiennej.
- wygaśnięcie - Czas UNIX, w którym zmienna wygaśnie. Czas UNIX jest zdefiniowany jako liczba sekund od 1 stycznia 1970 00:00:00 GMT.
- nazwa - Nazwa zmiennej.
- wartość - Wartość zmiennej.
więc najprostszym rozwiązaniem jest eksport cookies przeglądarki do pliku cookies.txt
i instruować curl
z nich korzystać. W przeglądarce Chrome pliki cookie są przechowywane w bazie danych sqlite3. Można eksportować je za pomocą następującego polecenia:
sqlite3 ~/.config/google-chrome/Default/Cookies \
'select host_key, "TRUE", path, "FALSE", expires_utc, name, value from cookies where host_key like "%google.com"' \
| tr '|' '\t' > /tmp/cookies.txt
Zanotuj host_key like "%google.com"
co ogranicza wyeksportowane pliki cookies.
Invoke curl
z -b /tmp/cookies.txt
użyć wyeksportowanych plików cookie i uwierzytelnienia w google mapy i będziesz mógł pobrać mapy google historia lokalizacja
curl -b /tmp/cookies.txt https://maps.google.com/locationhistory/b/0/kml\?startTime\=1376604000000\&endTime\=1376690400000
Aby uniknąć przechowywania cookies w pliku tymczasowym, użyj polecenia :
curl -b <(sqlite3 ~/.config/google-chrome/Default/Cookies 'select host_key, "TRUE", path, "FALSE", expires_utc, name, value from cookies' | tr '|' '\t') https://maps.google.com/locationhistory/b/0/kml\?startTime\=1376604000000\&endTime\=1376690400000
Czy ograniczanie przekierowań w wget (z użyciem '--max-redirect', domyślnie jest to 20 lub coś). W cURL '-L' (lub' --location') jest używany do instruowania go, aby śledził przekierowania. – Sithsu
Użyłem wartości domyślnej i nie ustawiałem żadnej konkretnie .. – Harry
Obecnie pracuję nad takim rozwiązaniem: http://pmsenthilkumar.blogspot.de/2012/01/google-api-using-curl-or-wget- lub-plain.html – Harry