Commit Graph
35 Commits
Author SHA1 Message Date
Qiufeng 7d6089112a fix(tencent): 图文发布改用独立创建页 finderNewLifeCreate(不再在视频表单里切换模式);全面拉长 timeout 适配慢网络;清理调试代码 2026-08-21 22:43:52 +08:00
Qiufeng 757ce2f77c fix(tencent): cookie_auth 改用 auth_data 接口探测为权威判据,移除不存在的「发表视频」按钮验证——该按钮随平台改版已不存在,导致登录成功后误判失效 2026-08-21 20:00:59 +08:00
Qiufeng a7348495c9 fix(tencent): 修正登录完成判定顺序——移除 qrconnect iframe 前置误判,改为发表视频按钮/平台页优先;扫码与过期检测穿透 iframe,修复扫码后无反馈、登录成功后二维码不销毁 2026-08-21 18:45:15 +08:00
Qiufeng b96de7a2d2 fix(tencent): 登录态校验区分接口层/页面层——接口 auth_data 判快速失效,页面验证「发表视频」按钮判登录完整;修复扫码后过早保存不完整 cookie(finder_uin 空)导致发布弹扫码框 2026-08-21 18:30:26 +08:00
Qiufeng 2ed56bb144 fix(tencent): 登录态校验统一改为 get_auth_info 接口探测(errCode==0),消除测试/发布两套判定不一致;修正登录态 cookie 为 sessionid+wxuin 2026-08-21 17:54:29 +08:00
Qiufeng 9295e715b5 fix(tencent): 登录成功改为 cookie 检测优先(ww_datasalt/ww_bizuin/wxuin/slave_sid),修复扫码确认后 DOM/URL 检测不到的问题 2026-08-21 17:07:18 +08:00
Qiufeng 583a7a3465 fix(tencent): page.goto 加 domcontentloaded + 60s 超时 + 容错,避免首页加载超时导致登录直接失败 2026-08-21 16:59:17 +08:00
Qiufeng d34711062d fix(tencent): 修复扫码成功判定——登录后停在 /platform 首页也视为成功;扫码/过期状态实时推给前端 2026-08-21 16:42:38 +08:00
Qiufeng fd944b08bd feat: EveryPublish Web 管理端重构与全平台发布接入
- 新增 React + TDesign 管理端(sau_web_react),替代历史 Vue 前端
- 后端接入 11 平台登录/发布(视频+图文),check_cookie 扩展全平台
- 异步发布任务 + 实时进度监控 + 发布日志
- Open API 开放体系(API Key 鉴权 + 7 个开放接口 + API 文档页)
- 账号单/批量校验与批量删除
- 全局配置(登录方式 + 发布静默模式)
- 统一浏览器为系统 Chrome,品牌文案统一为 EveryPublish
2026-08-21 14:41:47 +08:00
home-dev-pookz 926be742cd fix(tencent): wire collection name into uploader 2026-08-20 04:21:03 +08:00
home-dev-pookz 49365fd046 Merge pull request #261: Tencent real-name verification 2026-08-19 18:31:07 +08:00
home-dev-pookz 9969770039 Merge pull request #265: Tencent revamped editor fixes 2026-08-19 18:13:51 +08:00
suihf c1617444f9 fix(tencent): adapt to Channels revamped editor and improve publish flow
- Open homepage first, then click the visible 'publish video' entry
  button instead of loading /platform/post/create directly, which gets
  bounced back to the homepage and leaves the form iframe un-mounted
- Detect expired cookies up front by watching for the /login.html
  redirect and the qrconnect iframe
- Drop the redundant confirm_thumbnail_crop call that caused a 5s
  timeout on cover upload
- Select collection by exact name after upload completes (form resets
  selections made while the video is still uploading); keep it
  unselected when no matching name is found instead of picking a
  random one
- Scroll the target option into view and fall back to forced click /
  native dispatch for headless visibility issues
- Tighten short-title length to 7~15 chars to pass platform validation
- Dismiss the occasional 'switch account' dialog that blocks the
  description box and the publish button
2026-08-13 09:49:34 +08:00
FromTX2SJ 9342a343ab fix(tencent): 上传卡住时要说话 —— iframe 等待 / 重试上限 / 超时
三个问题都是「失败了但看起来像正常」,实测于 2026-08-11。

1. open_upload_page 不等 iframe 加载完
   上传表单在 micro/content/post/create 这个 iframe 里,domcontentloaded
   时它还是空的。紧接着找 input[type=file] 找不到,报「未找到视频号文件
   上传框」——而失败截图上左栏渲染正常、主内容区一片空白,完全不像是
   加载没完成。加一个 networkidle 等待。

2. 找上传框的重试窗口只有 20 秒
   实测这个 iframe 挂上 input 要几十秒。提到 60 秒,并在最终失败时留
   截图 + url + frames:这个错误的可能原因太多(没登录 / 落到首页 /
   iframe 没加载完 / 平台改版),只看错误字符串没法区分。

3. wait_for_upload_complete 是没有出口的 while True  ← 最严重
   上传出错就删掉重传,失败再删再传,永远循环;中间每 2 秒打一行
   「正在上传视频中...」——这条日志和真的在传一模一样,从外面完全分不出。

   实测 172MB / 上行 ~0.5Mbps:每次传到 4 分钟左右报错然后重来,
   循环了近 2 小时也不会停,进程也不会退。用户看到的只有「正在上传
   视频中」,真相是同一段视频被反复上传了 20 多次。

   改成 1 小时超时 + 3 次重试上限,两个都带现场截图报明确的错。
   进度日志从每 2 秒一行降到 30 秒一行并带上已等时长(原来 50 分钟
   刷了 1600 行同样的话)。
2026-08-11 19:55:52 +08:00
tankztz ad2419ef16 fix(tencent): wait for real-name verification 2026-08-10 02:09:51 +08:00
tankztz 8ee7bcdb8a fix(tencent): poll delayed publish entry 2026-08-07 17:04:43 +08:00
tankztz 2dfae17775 fix(tencent): support current video publish page 2026-08-06 18:57:56 +08:00
snow-moonlight1 662633bb3d fix(tencent): cookie_auth 误报有效 + 上传页登录跳转前置检测
视频号 cookie 失效时, post/create 页面先正常加载, 数秒后才被前端 JS
跳转到 login.html。原 cookie_auth 在跳转前检查, 误报 'cookie 有效',
放行后在上传页报出无关错误(如 '未找到视频号文件上传框')。

- cookie_auth: 等待 8 秒确认是否被踢到 login.html, 外加 qrconnect
  登录 iframe 双保险, 消除误报
- open_upload_page: 同样的跳转检测前置, cookie 失效时报明确错误
  '请重新扫码登录后再发布'
2026-07-23 00:32:57 +08:00
snow-moonlight1 f4693db9d7 fix(tencent): adapt QR code extraction to new qrconnect login iframe
The WeChat Channels login page now embeds the QR code in an
open.weixin.qq.com/connect/qrconnect iframe whose img.qrcode src is a
relative path (e.g. /connect/qrcode/xxxx) instead of an inline
data:image/ URL. The previous logic looked for a login-for-iframe
frame and only accepted data:image/ sources, so login always failed
with '未获取到视频号登录二维码地址'.

Changes:
- Detect the qrconnect iframe and resolve the relative img src,
  download the QR image via the browser context and convert it to a
  data URL so downstream save/decode logic stays unchanged
- Keep the legacy login-for-iframe and selector fallbacks
- Tolerate QR extraction failure: the login flow now continues and
  lets the user scan directly in the headed browser instead of
  aborting the whole login
2026-07-21 13:42:10 +08:00
changyandao e192fa0cb1 fix(tencent): 视频号定时时间选择器收尾容错
set_schedule_time 键入小时后改用 Enter 确认 + 收起浮层做容错(直接点
input-editor 可能被 weui-desktop-dialog 时间选择浮层遮挡),避免定时步偶发卡死
2026-06-13 15:33:01 +08:00
changyandaoc f5cb31079c fix(uploader): 适配抖音与视频号发布页最新 DOM 结构
抖音 douyin_uploader:
- 填标题/描述:改用 input[placeholder*=填写作品标题] 与 div.zone-container[contenteditable] 定位
- 话题输入后按 Escape 收起下拉,避免浮层拦截
- '选择封面'与'发布'改用 force 点击,并移除拦截点击的新手引导(shepherd)浮层
- 封面弹窗适配:div.dy-creator-content-modal + input.semi-upload-hidden-input;横竖版切换改用'设置竖封面'按钮;完成后等弹窗关闭

视频号 tencent_uploader:
- upload_video_file 遍历所有 frame 查找文件框 + 重试等待

说明:两平台发布均需有头模式(--headed),无头下视频号上传框不渲染。
2026-06-13 12:01:24 +08:00
AlleriaandGitHub 5716d486cc Merge pull request #211 from muy97212-spec/fix/tencent-original-statement-optional
fix(tencent): 视频号「声明原创」缺失时跳过而非中止发布
2026-06-03 09:45:51 +08:00
yoqu aa526b6ca8 feat(cli): 支持双比例封面参数 2026-06-02 16:30:27 +08:00
智行oloandClaude Opus 4.8 3ef4cd322a fix(tencent): 视频号「声明原创」缺失时跳过而非中止发布
视频号原创声明是可选项,但 apply_original_statement 在未找到声明入口时
会 raise RuntimeError 中止整个发布。在改版后的发布页(部分账号用 wujie
微前端,DOM 结构不同)经常匹配不到入口,导致本可正常发布的视频全部失败。

改为:未找到声明入口时记录 warning 并继续发布,不再中止。同时给诊断分支的
body 定位加 .first,避免页面存在多个 <body> 时 Playwright strict mode 崩溃。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-30 02:11:38 -07:00
tianqi 1cba88de15 fix: add tencent cli and original declaration handling 2026-05-28 17:14:03 +08:00
home-dev-pookz ff0285c7a6 腾讯重构一版 2026-04-22 19:04:20 +08:00
AlleriaandGitHub 2f957b79ff Merge branch 'main' into main 2025-11-17 17:39:19 +08:00
Deroino 81b71d023d feat(wechat-channel): add draft upload functionality for video channel
- Add isDraft parameter to TencentVideo class to control publishing behavior
- Modify click_publish method to click "保存草稿" instead of "发表" when isDraft is true
- Update post_video_tencent function to accept and pass is_draft parameter
- Add is_draft parameter to /postVideo API endpoint to receive frontend data
- Add "视频号上传草稿" checkbox in frontend that appears only for video channel platform
- Update defaultTabInit to include isDraft property with default value false
- Include isDraft in publishData sent to backend API
- Implement proper URL checking for draft vs publish success confirmation

The new functionality allows users to save WeChat Channel videos as drafts
instead of immediately publishing them when the checkbox is selected.
2025-11-13 09:12:39 +08:00
Deroino 0cdd088d97 fix(playwright): Prevent launch error when LOCAL_CHROME_PATH is empty 2025-11-13 05:08:06 +08:00
听风 de2389c9b1 feat: 增加Docker容器环境 2025-11-06 14:50:19 +08:00
Edan's Win11 86fb7f6563 feat: 增加 xiaohongshu 的登录和发布相关脚本 2025-06-03 23:02:47 +08:00
Edan's Win11 77c62a2b0f fix: 将 sau_backend 目录的文件,再挪回根目录,以防止大家迁移出现问题 2025-06-03 17:02:28 +08:00
Edan's Win11 5c91a68d8c fix: 将所有后端文件都迁移到 sau_backend 文件夹内 2025-06-03 15:28:08 +08:00
pookz@stme 79db56e0e2 1. 修复视频号cookie验证规则 2024-09-03 16:54:24 +08:00
pookz@stme 3158eb9a4c 1. add kuaishou uploader
2. refactor the code
2024-08-08 18:38:13 +08:00