从Everytrail下载行程的刮刀,包括GPS数据、故事和照片。
everytrail_export的Python项目详细描述
一个python脚本,它为旅行故事刮掉所有的旅行页面, 照片和GPS数据。为自己的旅行出口。
见this blog post 为了这个工具背后的动机。
安装
使用pip:
安装pip install everytrail_export
如果由于权限而失败,请尝试 pip install everytrail_export --user。
如果由于未安装PIP而失败,请遵循以下说明: https://pip.pypa.io/en/latest/installing.html
用法
使用pip安装会生成一个名为^{tt3}的可执行文件$ 可从命令行获得。调用不带参数的脚本 给出使用说明:
everytrail_export
如果失败,请确保系统$PATH包含 安装来自python包的可执行脚本的位置。 (例如,如果在osx上安装了--user选项, 包脚本安装到~/Library/Python/2.7/bin。
–trailauth选项
从Everytrail下载GPX/KML数据需要登录。 这意味着您需要从Web浏览器传递登录cookie,以便 脚本可以充当登录用户。
首先,在浏览器上登录Everytrail,这将设置一个cookie 向您登录的所有轨道指示。然后找出 TRAILAUTHcookie,它将是一长串字母和数字 看起来像是 bce2a5ef9d3fd800e84f438f7237fe40dec5f1bd94cf67075ad17540ce956eed。 找到这个cookie至少有两种方法:
- 按照此Wikihow页面上的说明查看浏览器的 饼干:http://www.wikihow.com/View-Cookies
- 在Everytrail页面上,打开浏览器的Web开发人员 控制台(通常在“工具”菜单下)并键入document.cookie。 查找TRAILAUTH值。
然后,可以使用^{tt11}将该值传递给脚本$ 选择。
-trips页面选项
如果使用--trips-page选项提供旅行的url 列表页,然后该列表将为 下载。这样的话,你不必一次一个地通过旅行 剧本。
要查找您的旅行页面,请确保您已登录Everytrail, 然后将鼠标悬停在菜单顶部的“MyEverytrail”上。 页面,直到出现下拉菜单。点击“我的旅行”在 下拉菜单。复制浏览器地址栏中的URL。
总而言之
使用--trailauth和--trips-page选项运行脚本 将找到该url中列出的所有trips,然后下载trips 一个接一个:
$ everytrail_export --trailauth d9b61ab30a10... \ --trips-page http://www.everytrail.com/my_trips.php?user_id=154142 Scraping http://www.everytrail.com/my_trips.php?user_id=154142 for trip URLs... Found links to 15 trips: 1550019 1673357 1693258 1733157 1741278 1820769 1924844 1924847 2022884 2053816 2108623 2301920 2348794 2671553 2991898 Trip 1/15: Downloading http://www.everytrail.com/view_trip.php?trip_id=1550019 El Corte de Madera Creek Trail - California, United States Saved trails/1550019-el-corte-de-madera-creek-trail/title.txt Saved trails/1550019-el-corte-de-madera-creek-trail/info.html Saved trails/1550019-el-corte-de-madera-creek-trail/stats.html Saving GPX and KML files... Downloading http://www.everytrail.com/downloadGPX.php?trip_id=1550019 Saved trails/1550019-el-corte-de-madera-creek-trail/1550019.gpx Downloading http://www.everytrail.com/downloadKML.php?trip_id=1550019 Saved trails/1550019-el-corte-de-madera-creek-trail/1550019.kmz Downloading photos page: http://www.everytrail.com/trip_pictures.php?trip_id=1550019&code= Photo 1/13: Downloading photo info page: http://www.everytrail.com/view_picture.php?trip_id=1550019&picture_id=4326030 Finding full photo: http://www.everytrail.com/picture/vieworiginal?picture_id=4336030 Downloading full photo: http://images.everytrail.com/pics/original/4336030-IMG_8018.jpg Saved "IMG_8018" to trails/1550019-el-corte-de-madera-creek-trail/images/4336030-IMG_8018.jpg ... Saved trails/1550019-el-corte-de-madera-creek-trail/photo_info.json Trip 2/15: ...
如果您的行程太多,以至于它们跨越了多个列表页(您的 trips页面底部有一个“下一步”链接,然后需要运行 每个列表页的脚本。
下载个人行程
另一种调用脚本的方法是只下载特定的 旅行。在这种情况下,可以将它们指定为参数:
$ everytrail_export --trailauth d9b61ab30a10... \ http://www.everytrail.com/view_trip.php?trip_id=2671553 \ http://www.everytrail.com/view_trip.php?trip_id=2991898 \ http://www.everytrail.com/view_trip.php?trip_id=2348794
–跳过照片
如果你有很多照片但只想下载旅行故事 gps数据,--skip-photos选项将使下载变得更多 更快。
–最大重试次数
默认情况下,脚本将重试失败的请求5次。如果 每个轨道都特别不稳定,您可以指定一个更高的值 使用--max-retries选项。
联系人
如果您有任何问题,或者在运行此脚本时遇到问题, 请发邮件到mark@warkmilson.com。