Tôi muốn truy vấn API Google Analytics bằng Python để tải xuống dữ liệu định kỳ từ tài khoản Analytics của tôi và lưu trữ dữ liệu trong cơ sở dữ liệu cục bộ. Tôi về cơ bản là làm theo các bước như được đưa ra trong basic tutorial. Tôi đang sử dụng Google client API library for Python trong quá trình này.Truy cập API Google Analytics mà không có trình duyệt cục bộ trong python
Tập lệnh của tôi đang hoạt động tốt cho đến giờ khi tôi chạy nó trên máy dev cục bộ của mình (Mac). Khi tôi bắt đầu tập lệnh, trình duyệt của tôi mở ra và tôi được nhắc cấp quyền truy cập vào dữ liệu Analytics của mình từ ứng dụng. Sau đó, tôi có thể chạy tập lệnh của mình thường xuyên như tôi muốn và nhận quyền truy cập vào dữ liệu của mình.
Trên máy chủ của tôi (Ubuntu, chỉ có đầu cuối), trình duyệt w3m
mở, nhưng tôi không thể truy cập tài khoản Google của mình từ đó. Tôi chỉ có thể thoát khỏi w3m
và giết chương trình với Ctrl-C
. Có một thông báo lỗi như:
Trình duyệt của bạn đã được mở để tham quan:
https://accounts.google.com/o/oauth2/auth?scope=some_long_url&access_type=offline
Nếu trình duyệt của bạn trên một máy khác nhau sau đó thoát ra và chạy lại ứng dụng này với lệnh line tham số
--noauth_local_webserver
Howe ver khi tôi chạy tập lệnh của mình với thông số --noauth_local_webserver
, tôi nhận được kết quả tương tự - w3m
mở và tôi không thể xác thực.
Làm cách nào để có được --noauth_local_webserver
hoạt động? Tôi có một cách khác để xác thực mà không có một trình duyệt địa phương trên cùng một máy?
Tôi có vấn đề tương tự, nhưng tôi cần phải tự động hóa quy trình xác thực (tôi không muốn "chấp nhận" API mỗi lần). Có cách nào để gửi thông tin đăng nhập/mật khẩu qua máy khách python hay tôi sẽ phải hack mã mẫu và thực hiện thông qua PhantomJS? – aviggiano
phantom js không phải là một ý tưởng tồi! Tôi cũng không muốn chấp nhận API mọi lúc, nó làm hỏng tự động cho tôi. Điều này có vẻ đầy hứa hẹn: https://www.npmjs.com/package/headless-google-auth – grasshopper