ChatGPT_Exporter:一键导出 ChatGPT 聊天记录
为什么需要导出 ChatGPT 聊天记录? 随着 AI 对话工具的普及,我们在 ChatGPT 中积累了大量有价值的对话。但 ChatGPT 官方并未提供批量导出功能,一旦账号出现问题或需要迁移,这些记录将面临丢失风险。 ChatGPT_Exporter 正是为了解决这一痛点而诞生的开源工具。 项目介绍 ChatGPT_Exporter 是一个基于 Tampermonkey(油猴)的浏览器脚本,可以一键导出 ChatGPT 的全部聊天记录,并自动打包为 ZIP 文件保存到本地。 GitHub 地址:https://github.com/zjt666666zjt/ChatGPT_Exporter 主要特性✅ 自动批量导出所有对话(包括归档记录) ✅ 支持多种格式:JSON、Markdown、HTML ✅ 自动生成美观的 HTML 页面(含代码高亮) ✅ 支持团队空间 (ChatGPT Team / Enterprise) ✅ 导出过程带有重试与断点机制,防止导出失败 ✅ 一键打包成 ZIP 文件下载详细安装步骤 第一步:安装 Tampermonkey 浏览器插件 Tampermonkey 是一个浏览器扩展,用于管理用户脚本。根据你使用的浏览器选择对应的安装链接:Chrome / Edge:https://tampermonkey.net/?ext=dhdg&browser=chrome Firefox:https://tampermonkey.net/?ext=dhdg&browser=firefox安装完成后,浏览器右上角会出现 Tampermonkey 图标。 第二步:选择并安装脚本版本 项目提供两个版本: 稳定版(推荐) 适合只需要稳定、可靠的「全量导出」功能的用户。 一键安装链接:https://raw.githubusercontent.com/zjt666666zjt/ChatGPT_Exporter/main/chatgpt-exporter.user.js 点击链接后,Tampermonkey 会自动弹出安装提示,点击「安装」即可。 Beta 版(功能增强) 适合想体验新功能的用户,新增特性包括:支持「最近 N 条」导出 支持项目(Project / Gizmos)文件单独导出 全新弹窗配置 UI 按钮内嵌进度条一键安装链接:https://raw.githubusercontent.com/zjt666666zjt/ChatGPT_Exporter/main/chatgpt-exporter-beta.user.js 第三步:使用脚本导出聊天记录登录 ChatGPT 或 chatgpt.com 等待页面加载完成后,右下角会出现绿色的「Export」按钮 点击按钮: 稳定版:直接开始导出流程 Beta 版:先弹出配置窗口,选择导出范围/格式/空间,然后点击「开始导出」等待脚本自动遍历所有会话,生成 ZIP 文件并自动下载到本地导出文件结构 导出后的 ZIP 文件包含以下结构: ChatGPT_backup_2025-11-05.zip ├── 对话A_xxx.json ├── 对话A_xxx.md ├── 对话A_xxx.html ├── 对话B_xxx.md ├── Project_工作项目1/ │ ├── 对话1_项目相关.md │ └── 对话2_调试记录.html └── Project_学习笔记/ ├── AI原理研究.md └── AI原理研究.html注意事项请确保已登录 ChatGPT,否则脚本无法获取会话数据 导出前建议先打开任意一个聊天页面,确保 Access Token 有效 若导出失败,可刷新页面后重试 所有数据均保存于本地,不会上传到任何服务器总结 ChatGPT_Exporter 是一个非常实用的开源工具,可以帮助我们轻松备份和迁移 ChatGPT 聊天记录。无论你是个人用户还是团队用户,都能找到适合自己的使用方式。强烈推荐给所有 ChatGPT 用户!
HTML格式化输出专用提示词
背景 最近看到有朋友分享的 HTML 输出效果不错,在 Cherry Studio 中测试了半天,终于调出了一版比较满意的提示词。目前只在 GPT-5.5 模型上测试过,其他模型的效果大家可以自行尝试。 提示词模板以下为 HTML 格式化输出专用提示词,适用于需要生成美观、报纸风格排版的场景。核心要求输出格式:必须使用完整 HTML 片段,所有样式使用行内 CSS,禁止使用外部 CSS、<style> 标签或链接页面风格:背景使用温暖的米色、象牙白或浅纸张色 主体内容居中,使用浅纸色卡片 带轻微边框和柔和阴影字体搭配:中文正文:系统无衬线字体(-apple-system、Segoe UI、Noto Sans SC、PingFang SC、Microsoft YaHei) 主标题和重要标题:Georgia、Times New Roman 或 Noto Serif SC,营造报纸感排版要求:根据输出内容灵活调整排版 尽量使用多种排版格式,模拟报纸效果 添加背景图形进行美化 使用图形填补排版空白,避免出现大面积空白 段与段之间空一行链接处理:所有引用链接在页面末尾集中展示,不要出现在正文中质量检查:最终输出前再检查一次,确保没有不符合要求的内容使用场景 这套提示词特别适合以下场景:生成精美的文章页面 制作信息图表风格的内容 创建报纸风格的文档 生成可直接渲染的 HTML 片段注意事项目前仅在 GPT-5.5 模型上测试,其他模型效果可能有差异 建议在 Cherry Studio 等工具中使用 可根据实际需求调整字体和颜色配置效果预览 由于原帖包含截图,建议直接访问原帖查看效果: https://linux.do/t/topic/2394675
使用清华大学开源软件镜像站下载JDK
为什么选择清华大学开源软件镜像站? 清华大学开源软件镜像站(TUNA)提供了一个快速、稳定且免费的软件源镜像服务,支持众多流行的开源项目,包括 Adoptium 提供的 JDK。使用 TUNA 镜像站可以显著提高下载速度,特别是在中国大陆地区。 下载步骤 步骤 1:访问 TUNA Adoptium 镜像站 首先,打开浏览器并访问以下链接: https://mirrors.tuna.tsinghua.edu.cn/Adoptium/ 步骤 2:选择 JDK 版本 在页面上,可以看到不同版本的 JDK 目录。根据需要选择相应的版本,例如 JDK 8、JDK 11 或 JDK 17。 步骤 3:选择操作系统和架构 进入 JDK 版本目录后,选择适合的操作系统和架构目录。例如,对于 64 位 Windows 系统,可以进入: 8/jdk/x64/windows/步骤 4:选择安装包格式 在操作系统目录下,可以选择不同的安装包格式。对于 Windows 系统,通常有以下选择:MSI 安装包:Windows 的标准安装格式 ZIP 压缩包:免安装版本,解压后可直接使用步骤 5:下载 JDK 选择好需要的安装包格式后,点击下载链接即可开始下载。例如,JDK 8 的 Windows 64 位版本: OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.msi或 ZIP 格式: OpenJDK8U-jdk_x64_windows_hotspot_8u422b05.zip不同操作系统的选择方式Windows:选择 windows/ 目录,然后根据需要选择 MSI 或 ZIP 格式 Linux:选择 linux/ 目录,通常提供 .tar.gz 格式的压缩包 macOS:选择 mac/ 目录,提供 DMG 格式的安装包注意事项在下载和安装 JDK 之前,确保系统满足 JDK 的最低系统要求 安装 JDK 后,可能需要配置环境变量,以便在命令行中使用 java 命令 如果遇到下载速度慢或无法下载的问题,可以尝试更换网络环境或稍后重试总结 通过以上步骤,您可以轻松从清华大学开源软件镜像站下载并安装适合的 JDK 版本。如果有任何问题,可以访问镜像站的帮助文档或社区论坛寻求帮助。希望这篇文章能帮助您快速获取所需的 JDK 版本。
EasyTier 能 ping 通但 HTTP 不通:排查思路和解决方法
EasyTier 组网后能 ping 通对方,但 HTTP 访问失败——这是隧道已建立、应用层流量被拦截的典型现象。 快速定位(3 条命令) ① 客户端测试 TCP 连通性 curl -v http://对方EasyTierIP:端口Connection refused:网络通,服务没监听 Connection timed out:防火墙或路由拦截 返回 HTTP 内容:服务正常,排查客户端代理② 服务端抓包 sudo tcpdump -i tun0 tcp port 80同时客户端访问一次:抓包结果 结论看到 SYN 流量到了服务器,查服务监听或防火墙看不到 SYN 路由或 EasyTier 转发问题SYN 无 SYN-ACK 防火墙或服务未监听③ 查看监听端口 ss -lntp | grep -E ':80|:443|:8080'原因一:服务只监听 127.0.0.1(最常见) ss -lntp 看到 127.0.0.1:80,EasyTier 的 tun0 流量就无法到达服务。 修改方法: # uvicorn uvicorn main:app --host 0.0.0.0 --port 8000# nginx listen 0.0.0.0:80;# Node.js app.listen(80, '0.0.0.0')原因二:防火墙拦截 tun0 ping 用 ICMP,HTTP 用 TCP,如果防火墙只放行了 ICMP 或者对 EasyTier 网卡有限制: # 查看规则 sudo iptables -L -n sudo ufw status# 临时放行 tun0(测试用) sudo iptables -I INPUT -i tun0 -j ACCEPT sudo iptables -I FORWARD -i tun0 -j ACCEPT永久规则(以 ufw 为例): sudo ufw allow in on tun0原因三:Docker 端口绑定到 localhost docker ps如果看到 127.0.0.1:80->80/tcp,改成: docker run -p 80:80 ...原因四:服务绑定到特定网卡 IP 服务器有多个网卡(公网 IP + EasyTier IP),应用可能只绑到了公网 IP: ss -lntp | grep 8080如果看到 103.x.x.x:8080,需要改为 0.0.0.0:8080。 原因五:代理劫持 HTTP 流量 系统装了 Clash、sing-box 等,可能把内网 IP 的 HTTP 也走了代理: curl --noproxy '*' http://10.x.x.x如果这样能通,就是代理规则问题,把 EasyTier 网段加入 bypass 列表。 原因六:MTU 问题 现象:ping 小包正常,HTTP 建连后卡住或大文件下载失败。 ping -M do -s 1472 目标IP失败则把 EasyTier 网卡 MTU 调小: sudo ip link set tun0 mtu 1280EasyTier 配置自定义 IP 段 默认 dhcp = true 由网络中的 DHCP 节点分配 IP。如果要固定 IP: dhcp = false ipv4 = "10.88.0.2/24"如果加入的是他人的 EasyTier 网络,单方面改客户端配置通常不生效,需要整个网络统一规划地址段。 诊断工具速查 # 确认 EasyTier 接口和 IP ip addr show tun0# 确认路由(流量是否走 tun0) ip route | grep tun0# TCP 连通性测试 nc -vz 目标IP 80# 本机自测(服务端执行) curl -v http://127.0.0.1:80 curl -v http://tun0_IP:80
EasyTier 能 ping 通但 HTTP 访问不了:六种原因排查
现象 EasyTier 组网后:ping 10.126.126.x ✅ 成功 curl http://10.126.126.x ❌ 失败说明 EasyTier 隧道本身正常,问题在 TCP/应用层。 排查顺序 1. Web 服务只监听 127.0.0.1(最常见) ss -tlnp如果看到: 127.0.0.1:8080而不是: 0.0.0.0:8080说明服务拒绝来自 EasyTier 地址的连接。修复方式:服务 正确配置Nginx listen 0.0.0.0:80;Node.js app.listen(8080, '0.0.0.0')FastAPI/uvicorn uvicorn main:app --host 0.0.0.0Python http.server python -m http.server --bind 0.0.0.02. iptables 只放行了 ICMP,没放行 TCP sudo iptables -L -n sudo ufw status sudo firewall-cmd --list-all # CentOS临时放行 EasyTier 网卡: sudo iptables -I INPUT -i tun0 -j ACCEPT sudo iptables -I FORWARD -i tun0 -j ACCEPT如果 HTTP 立刻恢复,说明是防火墙问题,再添加永久规则。3. Docker 端口映射绑定到 127.0.0.1 docker ps如果端口映射是: 127.0.0.1:8080->8080/tcpEasyTier 无法访问。需要改为: docker run -p 8080:8080 ... # 正确 # 不要用 docker run -p 127.0.0.1:8080:8080 ...4. HTTP 请求被系统代理拦截 如果本机装了 Clash/V2Ray/sing-box: curl --noproxy '*' http://10.126.126.x如果加了 --noproxy 后能访问,说明代理规则把 EasyTier 内网地址错误地转发了出去。在代理工具里添加 10.0.0.0/8 为直连规则。5. MTU 问题 现象:ping 小包正常,HTTP 建连后卡住,大文件下载失败。 测试: ping -M do -s 1472 目标IP如果失败,降低 MTU: sudo ip link set tun0 mtu 12806. 路由未覆盖目标网段 ip route | grep tun0确认有类似: 10.126.126.0/24 dev tun0 proto kernel scope link src 10.126.126.1如果没有,HTTP 的 TCP 包会走默认网关出公网。 tcpdump 快速定位(推荐) 在服务端抓包: sudo tcpdump -i tun0 tcp port 80客户端发起请求后看结果:抓包结果 结论看到 SYN 包 流量到达服务端,问题是防火墙或服务监听地址看不到任何包 EasyTier 路由问题,或客户端代理拦截SYN 但没有 SYN-ACK 防火墙拦截(iptables DROP)SYN 后立即 RST 服务没在该端口监听配合 curl -v http://目标IP 看是 Connection refused 还是 Timeout,可以快速缩小问题范围。
