bash – 每天WGET您的谷歌位置记录

前端之家收集整理的这篇文章主要介绍了bash – 每天WGET您的谷歌位置记录前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想定期保存我的谷歌位置记录.

通常我使用Web接口:
https://maps.google.com/locationhistory/b/0

它还提供了一个导出数据的链接,如下所示:

https://maps.google.com/locationhistory/b/0/kml?startTime=1376604000000&endTime=1376690400000

如何每天下载此链接(及其固定的时间戳),包括使用WGET或curl登录

简单地说它给我带来了302 Moved Temporarily

您将获得302 Moved Temporarily,因为您需要进行身份验证:Google正在将您重定向到其登录页面.

经过身份验证后,Google凭据会存储在浏览器Cookie中.如果您要下载Google地图位置历史记录链接,则必须提供带卷曲的浏览器Cookie. curl的-b选项允许您使用相对于Netscape/Mozilla cookie file format的cookies.txt.

Each line of the cookies.txt has seven tab-separated fields:

  • domain – The domain that created AND that can read the variable.
  • flag – A TRUE/FALSE value indicating if all machines within a given domain can access the variable. This value is set automatically by the browser,depending on the value you set for domain.
  • path – The path within the domain that the variable is valid for.
  • secure – A TRUE/FALSE value indicating if a secure connection with the domain is needed to * access the variable.
  • expiration – The UNIX time that the variable will expire on. UNIX time is defined as the number of seconds since Jan 1,1970 00:00:00 GMT.
  • name – The name of the variable.
  • value – The value of the variable.

因此,最简单的解决方案是将浏览器cookie导出到cookies.txt文件并指示curl使用它们.在Chrome中,Cookie存储在sqlite3数据库中.您可以使用以下命令导出它们:

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

请注意host_key,例如限制导出Cookie的“%google.com”.

使用-b /tmp/cookies.txt调用curl以使用导出的cookie并对googles地图进行身份验证,您将能够下载google地图位置历史记录

curl -b /tmp/cookies.txt https://maps.google.com/locationhistory/b/0/kml\?startTime\=1376604000000\&endTime\=1376690400000

要避免将cookie存储在临时文件中,请使用以下命令:

curl -b <(sqlite3 ~/.config/google-chrome/Default/Cookies 'select host_key,value from cookies' | tr '|' '\t') https://maps.google.com/locationhistory/b/0/kml\?startTime\=1376604000000\&endTime\=1376690400000

猜你在找的Bash相关文章