推特导出 Excel 和 CSV:自己的推文和公开账号(2026)
推特推文导出 CSV 和 Excel 有两条路:自己的推文申请 X 数据存档,用免费查看器转 CSV;公开账号用 Power Query 直接导入。附 19 位 ID 不丢位、中文不乱码的设置。
Tarun Khatri
发布于 · 更新于 · 阅读约 7 分钟 · Read in English · 日本語で読む
把推特推文导出到 Excel 或 CSV,自己的推文用数据存档,其他公开账号用 Power Query 导入。
这篇写给想把 X(推特)推文放进表格、又不想写脚本的人。你会拿到两条路、保住 19 位 ID 的设置,和一段测过的查询。查询调用的 Weir 是我们做的 API。
在 Windows 版 Excel 里按第 3 步新建空白查询,粘贴这段,填上你的 Key:
let
Key = "weir_live_paste_your_key_here",
Body = Json.FromValue([fromUsers = {"msexcel"}, limit = 20]),
Headers = [Authorization = "Bearer " & Key, #"Content-Type" = "application/json"],
Response = Web.Contents("https://api.weirapp.io/v1/x/search", [Headers = Headers, Content = Body])
in
Json.Document(Response)[data]
- 选一条路自己的存档,或用 API 读任意公开账号。
- 存档转成 CSV查看器在你的浏览器里读 ZIP。
- 按文本导入 CSV用“从文本/CSV”,把 id 设成文本。
- 粘贴查询空白查询调用 Weir 的搜索接口。
- 加载并刷新点“关闭 & 加载”,以后点“全部刷新”。
推特导出 Excel,选哪条路?
先看你要的是谁的推文。截至 2026 年 10 月,三条路是这样的:
| 方法 | 谁的推文 | 费用 | Excel 版本 |
|---|---|---|---|
| X 数据存档 + 我们的查看器 | 只有你自己的 | 免费 | 近几年的版本都行 |
| Power Query + Weir | 任意公开账号 | 每次调用 1 积分 + 每条 1 积分 | Windows 版 2016 及以上 |
| X 官方 API + 自己写代码 | 任意公开账号 | 每读一条 $0.005 | 都行,先存成 CSV |
存档免费,但里面只有你自己的账号。
别人的推文要靠 API,而 Power Query 能在 Excel 里直接调用 API。想用 Python 存成 CSV,看批量下载某人全部推文的教程。
第 1 步:从 X 数据存档导出自己的推文
在 X 里依次进入“设置和隐私”→“账号”,在“数据和权限”下打开“你的 X 数据”(英文界面是 Your X data)。
用验证码确认身份后,点“请求数据”。X 帮助中心说,准备存档“可能需要几天时间”,好了会发邮件或推送通知。
存档是一个 ZIP 文件。X 说里面是 HTML 和 JSON 文件,没有现成的 CSV。
把 ZIP 拖进免费的推特存档查看器,点“下载 CSV”。文件只在你的浏览器里读取,不会上传。CSV 有 12 列,第一行是:
id,created_at,type,text,likes,reposts,reply_to_id,reply_to_user,lang,links,media,url
这个 CSV 开头带 BOM(字节顺序标记)。微软的说明是,带 BOM 的 UTF-8 CSV 能在 Excel 里直接正确打开,所以中文不会乱码。存档里的其他文件见推特数据存档怎么看。
第 2 步:把 CSV 导入 Excel,ID 设成文本
别直接双击 CSV。中文没问题,但 Excel 会把每个推文 ID 截成 15 位有效数字。
按微软的说明用 Power Query 导入,Windows 版 Excel 2016 及以上都行:
- 选择“数据”→“从文本/CSV”,选中文件,再点“转换数据”。
- 选中
id和reply_to_id两列,在“转换”里把“数据类型”改成“文本”。 - 弹出“更改列类型”时,选“替换当前”那一项,再点“关闭 & 加载”。
Microsoft 365 版和 Excel 2024 还有一个设置,双击打开也能保住每一位。
依次点“文件”→“选项”→“数据”→“自动数据转换”,取消勾选“保留长数字的前 15 位数字,并在需要时以科学记数法显示”。微软说,关掉后 16 位以上的数字会存成文本,每一位都在。Mac 上在“Excel”→“首选项”→“编辑”。
第 3 步:把任意公开账号的推文导入 Excel
Power Query 能调用网页 API,不用存档也能读任意公开账号或一次搜索。
你需要 Windows 版 Excel 和一个免费的 Weir Key,每月 5,000 积分,不用绑卡。微软列出的 Mac 版 Power Query 数据源里没有 Web。
- 选择“数据”→“获取数据”→“从其他源”→“空白查询”。
- 点“视图”→“高级编辑器”,把里面的内容换成下面的查询。
- 填上你的 Key 和账号,点“完成”。
- Excel 问怎么连接时,选“匿名”。 微软的 Web 连接器文档说,用
Web.Contents发 POST 请求只能匿名,而你的 Key 已经在请求头里。
let
Key = "weir_live_paste_your_key_here",
Body = [fromUsers = {"msexcel"}, query = "-filter:nativeretweets", limit = 20],
MaxPages = 5,
Ask = (cursor) => Json.Document(Web.Contents("https://api.weirapp.io/v1/x/search", [
Headers = [Authorization = "Bearer " & Key, #"Content-Type" = "application/json"],
Content = Json.FromValue(if cursor = null then Body else Record.AddField(Body, "cursor", cursor))])),
Pages = List.Generate(() => [Page = Ask(null), N = 1], each [Page] <> null,
each if [Page][meta][nextCursor] = null or [N] = MaxPages then [Page = null, N = [N]]
else [Page = Ask([Page][meta][nextCursor]), N = [N] + 1], each [Page][data]),
Rows = List.Transform(List.Combine(Pages), (p) => [id = p[id], createdAt = p[createdAt],
likes = p[likeCount], reposts = p[retweetCount], views = p[viewCount], text = p[text], url = p[url]]),
Posts = Table.TransformColumnTypes(Table.FromRecords(Rows), {{"id", type text}})
in
Posts
不用“来自 Web”对话框,是因为微软列出的“高级”可选请求头里没有 Authorization。2024 年 12 月,微软问答社区也有人报告手填的这个头被丢掉,返回了 401。
第 4 步:把推文加载成表格,再设置刷新
点“关闭 & 加载”,每条推文就是一行。
查询一页页往下翻,游标为 null 或到 MaxPages 就停,这是 Weir 分页文档(英文)的建议。
createdAt 是 UTC 时间的文本,照样能按时间排序,换成北京时间要加 8 小时。
按话题导出时,删掉 fromUsers,把 query 改成 "数据透视表 -filter:nativeretweets"。加上 onlyOriginal = true 可以去掉回复。
没有 Excel,我们怎么测的这段查询
我们这里跑不了 Excel,所以 2026 年 10 月 22 日用两种办法测了它。
微软开源的 Power Query 解析器 4.0.0 版顺利解析了两段查询,故意写错的对照查询则报错。
再用 Python 写同样的逻辑,对着本地模拟服务器跑,服务器返回一次真实的 Weir 搜索。那次搜 @msexcel 得到 3 条推文,花了 4 积分:
| id | createdAt(UTC) | 点赞 | 浏览 |
|---|---|---|---|
| 2111508184418664915 | 2026-10-17 17:22 | 5 | 476 |
| 2111493445500215355 | 2026-10-17 16:24 | 10 | 1,764 |
| 2111444294548763047 | 2026-10-17 13:08 | 52 | 23,939 |
前两条是回复。测试的结果:
- 正常翻页调用了两次:第二页是空的,游标为 null。
- 游标永远不为空时,第 5 次就停,这是
MaxPages的上限。 - 按数字存的 ID,最后 4 位都丢了。
在 Excel 里刷新推文要花多少钱?
Weir 每次调用收 1 积分,每条推文再收 1 积分,所以一整页 20 条推文是 21 积分。
每次刷新都会重新买一遍推文。Excel 能定时刷新,在“连接属性”的“使用状况”里勾选“刷新频率”就行:
每月 5,000 免费积分,够每天刷新一次。
积分包 $5 起,买的积分永不过期,详见价格页。
导入出错怎么办
- 报错里有 401:Key 错了或过期了。Weir 的 Key 只显示一次,重新建一个。
- 报错里有 402:积分用完了。充值,或者等下个月的免费积分。
- ID 末尾变成 0:Power Query 自动加的类型转换步骤,把
id改成了数字。删掉那一步。
什么时候不适合用 Weir
- 只要你自己的推文。 存档加我们的查看器,完全免费。
- 你用的是 Mac。 微软的 Mac 版 Power Query 没有 Web 数据源,这段查询在 Mac 上跑不了。
- 必须和 X 签合同。 用 X 官方 API,截至 2026 年 10 月每读一条 $0.005。
- 只看每条的单价。 TwitterAPI.io 标价每 1,000 条推文 $0.15,而且能发推。
Key 会存在工作簿里,所以只给它 read:x 权限并设过期时间,文件外传前先吊销。
Weir 只读公开数据,没有获得 X 的授权,访问方式可能变化。本文不构成法律建议。
常见问题
推特推文能免费导出到 Excel 吗?
能。自己的推文,用 X 数据存档和免费查看器存成 CSV。公开账号的推文,Weir 每月 5,000 免费积分在 Power Query 里能读约 238 整页,失败的调用不收费。
推文 ID 在 Excel 里为什么显示成 2.11E+18?
Excel 只保留 15 位有效数字,推文 ID 有 19 位。在 Power Query 里把 id 列设成文本,或者在“自动数据转换”里关掉 15 位那一项。已经存成 0 的数字没法恢复。
推文导出 CSV 后,用 Excel 打开中文乱码怎么办?
文件多半是不带 BOM 的 UTF-8。按微软的说明,用“数据”→“获取数据”→“从文件”→“从文本/CSV”导入,在预览窗口左上角的编码下拉框里选 65001: Unicode (UTF-8)。
能把别人的 Twitter 数据导出成 CSV 吗?
公开账号可以。X 数据存档只有你自己的账号,别人的推文要用 API,比如上面的 Power Query。受保护账号的推文只有获批的关注者能看,导不出来。
参考来源
2026 年 10 月 26 日核对;标 ※ 的沿用英文版 10 月 22 日的核对:
- X 帮助中心,下载 X 档案(Wayback 英文 10 月 15 日版,界面名称取自 2025 年 4 月的中文版):https://web.archive.org/web/20261015124209/https://help.x.com/en/managing-your-account/how-to-download-your-x-archive 、https://web.archive.org/web/20250428214239/https://help.x.com/zh-cn/managing-your-account/how-to-download-your-x-archive
- X 帮助中心,关注常见问题(英文,Wayback 10 月 17 日版):https://web.archive.org/web/20261017052138/https://help.x.com/en/using-x/following-faqs
- 微软支持,CSV UTF-8、长数字、自动数据转换:https://support.microsoft.com/zh-cn/excel/opening-csv-utf-8-files-correctly-in-excel 、https://support.microsoft.com/zh-cn/excel/keeping-leading-zeros-and-large-numbers 、https://support.microsoft.com/zh-cn/excel/set-automatic-data-conversions
- 微软支持,Power Query 数据源、创建查询、刷新连接:https://support.microsoft.com/zh-cn/excel/power-query-data-sources-in-excel-versions 、https://support.microsoft.com/zh-cn/excel/create-load-or-edit-a-query-in-excel-power-query 、https://support.microsoft.com/zh-cn/excel/refresh-an-external-data-connection-in-excel
- Microsoft Learn,Web 连接器、Text/CSV 连接器、编辑器界面:https://learn.microsoft.com/zh-cn/power-query/connectors/web/web 、https://learn.microsoft.com/zh-cn/power-query/connectors/text-csv 、https://learn.microsoft.com/zh-cn/power-query/power-query-ui
- ※Microsoft Q&A(英文,2024 年 12 月 19 日):https://learn.microsoft.com/en-us/answers/questions/2133885/excel-get-data-from-web-loses-authorization-header
- ※Power Query 解析器(英文,npm 4.0.0):https://github.com/microsoft/powerquery-parser
- X API 价格(英文):https://docs.x.com/x-api/getting-started/pricing
- TwitterAPI.io(英文):https://twitterapi.io/pricing 、https://docs.twitterapi.io/api-reference/endpoint/create_tweet_v2
- Weir 文档(英文):https://docs.weirapp.io/reference/x/searchX 、https://docs.weirapp.io/pagination 、https://docs.weirapp.io/authentication 、https://docs.weirapp.io/billing
- ※我们通过 Weir 的 search_x 搜索 @msexcel(limit 3,4 积分)