api - 存档来自 Twitter 的直接消息

标签 api twitter messages

有没有办法下载自己的私信来存档?

Twitter API将调用限制为最新的 200 个 DM,它们无法下载完整存档以进行更长的对话。

official Twitter Archive似乎根本不包含这些消息。大多数第三方服务(您可能无论如何都不想让他们访问您的消息)将使用 api,他们能做的最好的事情就是经常轮询,以免错过 200 DM 的限制。

还有其他方法可以从 twitter 获取消息吗?回滚网站似乎可行,但他们总是以小步骤加载较旧的消息,然后从那里复制和粘贴也会产生相当丑陋的结果。

不需要完整的twitter-api信息,只要句柄、时间和消息(可能是媒体链接,如果可能的话)都应该可用。

最佳答案

我创建了一个 tool ( https://github.com/Mincka/DMArchiver ) 下载我的直接消息,还可以下载上传的图片、视频和 GIF(作为 MP4)。

因为不依赖API,所以可以下载200多条消息。该脚本只是模拟二甲基精氨酸描述的“滚动方法”并解析结果。

主要思想是通过使用有效的 auth_token cookie 值调用以下 URL 来循环发出请求以进行身份​​验证并解析 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 响应中时,您处于线程的开头。

还需要一些 header 才能从 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 类 对话提供,但我可能会在未来添加其他输出样式(HTML、JSON、XML...)。

关于api - 存档来自 Twitter 的直接消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34441775/

相关文章:

java - Salesforce SOAP api 客户端 ID

api - Node.js 阻止函数检查 (toString)

python - 使用请求登录 Twitter

api - 从 API 搜索结果中获取推文总数?

scala - akka actor 中的消息传递序列

windows - 使用消息控制 Windows 中的写字板

api - Magento API V2 - 为 API 响应添加附加属性

angularjs - 2 个端口上的 Node Rest api 和 angularJS 应用程序的 CORS 问题

python - 从 Twitter 流中排除回复 - tweepy

windows - 如何防止双击“打开文件”对话框注册对其下方表单的单击?