存档来自 Twitter 的直接消息
Archive Direct Messages from Twitter
有没有办法下载自己的私信存档?
Twitter API 将调用限制为最新的 200 个 DM,无法下载完整的存档以进行更长的对话。
official Twitter Archive 似乎根本不包含消息。大多数第三方服务(您可能不想让他们访问您的消息)将使用 api,他们能做的最好的事情就是经常轮询,不要错过 200 DM 的限制。
有没有其他方法可以从推特上获取消息?在网站上向后滚动似乎可行,但他们总是以小步骤加载旧消息并从那里复制和粘贴也会产生相当难看的结果。
不需要完整的 twitter-api 信息,只需提供句柄、时间和消息(如果可能,可能还有媒体链接)。
很抱歉让这个帖子恢复生机,但我也一直在看这个。没有第三方应用程序可以执行此操作(据我所知),但查看了 Twitter 的源代码后,我似乎可以通过一些摆弄来下载它们。我的 'research' 显示,当您向上滚动时,它使用 JS 加载其上方的推文,使用类似于 API 的调用。如果您查看 Chrome 的网络日志,您应该能够看到它在哪里被调用以及调用的 URL。无法通过浏览器访问此内容,但如果我有进一步的了解,我会通知您。
抱歉,这还不是一个很好的答案 - 我发布这个只是为了更新它,不要忘记这样做。
更新 - 10/05/2016 - 我已经成功下载了我所有的 Twitter DM。它一点也不优雅,但它确实有效。它涉及让您的计算机整夜开机,单击鼠标中键以向上滚动您的 DM。完成后(到达第一个 DM),您可以下载网页和您的 DM。这会占用大量内存,所以要小心!我正在努力解析 HTML 现在所以它比当前的汤更具可读性。
我创建了一个 tool (https://github.com/Mincka/DMArchiver) 来下载我的私信,还可以下载上传的图片、视频和 GIF(MP4)。
因为不依赖API,所以可以下载200多条消息。该脚本只是模拟二甲基精氨酸描述的"scrolling method"并解析结果。
主要思想是通过调用以下 URL 并使用有效的 auth_token
cookie 值进行身份验证并解析 json 响应来循环发出请求:
https://twitter.com/messages/with/conversation?id=1337&max_entry_id=1337
第一个请求不需要 max_entry_id
值。您需要在每个后续迭代中使用响应中 min_entry_id
变量的值作为新的 max_entry_id
来获取接下来的 20 条旧推文。当 max_entry_id
不在 json 响应中时,您位于线程的开头。
还需要一些 headers 才能从 Twitter 获得正确的回复:
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0'
'Accept': 'application/json, text/javascript, */*; q=0.01'
'X-Requested-With': 'XMLHttpRequest'
目前,该工具的输出仅可用作 IRC-like 对话,但我将来可能会添加其他输出样式(HTML, JSON, XML...).
有没有办法下载自己的私信存档?
Twitter API 将调用限制为最新的 200 个 DM,无法下载完整的存档以进行更长的对话。
official Twitter Archive 似乎根本不包含消息。大多数第三方服务(您可能不想让他们访问您的消息)将使用 api,他们能做的最好的事情就是经常轮询,不要错过 200 DM 的限制。
有没有其他方法可以从推特上获取消息?在网站上向后滚动似乎可行,但他们总是以小步骤加载旧消息并从那里复制和粘贴也会产生相当难看的结果。
不需要完整的 twitter-api 信息,只需提供句柄、时间和消息(如果可能,可能还有媒体链接)。
很抱歉让这个帖子恢复生机,但我也一直在看这个。没有第三方应用程序可以执行此操作(据我所知),但查看了 Twitter 的源代码后,我似乎可以通过一些摆弄来下载它们。我的 'research' 显示,当您向上滚动时,它使用 JS 加载其上方的推文,使用类似于 API 的调用。如果您查看 Chrome 的网络日志,您应该能够看到它在哪里被调用以及调用的 URL。无法通过浏览器访问此内容,但如果我有进一步的了解,我会通知您。
抱歉,这还不是一个很好的答案 - 我发布这个只是为了更新它,不要忘记这样做。
更新 - 10/05/2016 - 我已经成功下载了我所有的 Twitter DM。它一点也不优雅,但它确实有效。它涉及让您的计算机整夜开机,单击鼠标中键以向上滚动您的 DM。完成后(到达第一个 DM),您可以下载网页和您的 DM。这会占用大量内存,所以要小心!我正在努力解析 HTML 现在所以它比当前的汤更具可读性。
我创建了一个 tool (https://github.com/Mincka/DMArchiver) 来下载我的私信,还可以下载上传的图片、视频和 GIF(MP4)。
因为不依赖API,所以可以下载200多条消息。该脚本只是模拟二甲基精氨酸描述的"scrolling method"并解析结果。
主要思想是通过调用以下 URL 并使用有效的 auth_token
cookie 值进行身份验证并解析 json 响应来循环发出请求:
https://twitter.com/messages/with/conversation?id=1337&max_entry_id=1337
第一个请求不需要 max_entry_id
值。您需要在每个后续迭代中使用响应中 min_entry_id
变量的值作为新的 max_entry_id
来获取接下来的 20 条旧推文。当 max_entry_id
不在 json 响应中时,您位于线程的开头。
还需要一些 headers 才能从 Twitter 获得正确的回复:
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0'
'Accept': 'application/json, text/javascript, */*; q=0.01'
'X-Requested-With': 'XMLHttpRequest'
目前,该工具的输出仅可用作 IRC-like 对话,但我将来可能会添加其他输出样式(HTML, JSON, XML...).