寻求批量选择频道/聊天消息并转发的可用脚本方案
批量选择Telegram聊天消息进行转发的可行方法
针对你需要批量选择4000条消息转发的需求,由于Telegram网页版的DOM结构已更新,旧脚本因类名失效无法运行,以下是适配新版网页版的操作步骤和可用脚本:
操作步骤
- 打开Telegram网页版(web.telegram.org),登录后进入目标聊天/频道
- 开启多选模式:长按任意一条消息,点击弹出菜单里的「多选」按钮
- 打开浏览器控制台:按下
F12键(或右键页面空白处,选择「检查」,切换到「控制台」标签) - 分两次运行以下脚本,先加载所有消息,再批量选择:
第一步:自动加载所有历史消息
复制下方代码粘贴到控制台,按回车运行,它会自动滚动到聊天顶部加载全部消息:
// 自动滚动加载所有消息 const scrollContainer = document.querySelector('.im_history_scrollable_wrap'); let lastScrollTop = scrollContainer.scrollTop; function scrollToTop() { scrollContainer.scrollTo(0, 0); // 滚动位置不再变化时,说明已加载完所有消息 if (scrollContainer.scrollTop === lastScrollTop) { clearInterval(scrollInterval); console.log('所有消息已加载完成'); } lastScrollTop = scrollContainer.scrollTop; } const scrollInterval = setInterval(scrollToTop, 100);
- 等控制台输出「所有消息已加载完成」后,再运行第二步脚本
第二步:批量选中所有消息
复制下方代码粘贴到控制台,按回车运行,它会自动选中所有已加载的消息:
// 批量选中所有未被选中的消息 const messages = document.querySelectorAll('.im_message_outer_wrap:not(.im_message_selected)'); messages.forEach(msg => { msg.click(); }); console.log(`已选中 ${messages.length} 条消息`);
注意事项
- 如果脚本无反应,刷新页面后重新开启多选模式再尝试
- 部分浏览器会阻止自动脚本,需在控制台提示中点击允许运行
- 加载4000条消息可能需要数分钟,期间不要关闭页面
内容的提问来源于stack exchange,提问作者DJZog96
相关产品推荐
相关产品推荐

