xhs comment fails with Playwright click timeout (subtree intercepts pointer events)
- Dominant language
- Python
- Stars
- 655
- Forks
- 68
- PR merge metrics
- No merged PRs in 30d
Description
When trying to post a comment using xhs comment, the command fails with a Playwright click timeout.
It appears that the comment input area is covered by an overlay element (not-active inner-when-not-active), which intercepts pointer events and prevents the automation script from activating the comment editor.
⸻
Environment
• OS: macOS (Apple Silicon)
• Python: 3.x
• xhs-cli: latest version from GitHub
• Browser automation: Camoufox (installed automatically)
⸻
Steps to Reproduce
Run:
xhs comment 69a52e0c000000002202xxxxx "赞啊"
⸻
Expected Behavior
The CLI should:
1. Activate the comment editor
2. Input the comment text
3. Submit the comment successfully
⸻
Actual Behavior
The command fails with a Playwright timeout when attempting to click the comment input area.
The error indicates that a placeholder/overlay element intercepts pointer events.
⸻
Error Log
[xhs_cli.client] ERROR: Failed to post comment: ElementHandle.click: Timeout 30000ms exceeded.
Call log:
- attempting click action
2 × waiting for element to be visible, enabled and stable
- element is visible, enabled and stable
- scrolling into view if needed
- done scrolling
- 评论 from
(retries multiple times)
❌ Comment failed
⸻
Possible Cause
It looks like the comment input area has a two-stage activation in the current Xiaohongshu UI:
1. Initially a placeholder element (e.g. 评论 / 说点什么...) is visible
2. Clicking this placeholder activates the real comment editor
3. Only after activation does the actual editable input appear (textarea or contenteditable)
Currently the automation script seems to click the placeholder or a container element that is covered by an overlay (not-active inner-when-not-active), which intercepts pointer events.
⸻
Suggested Fix
Possible approaches:
1. First click the placeholder/comment container to activate the editor
2. Wait for the real editable input (textarea or [contenteditable="true"])
3. Fill the comment
4. Click submit or press Enter
Alternatively, forcing the click (force=True) or targeting the inner editable element directly may also resolve the issue.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at the xhs comment command and trace the Playwright interaction that clicks the comment input. Reproduce with the documented command, then verify that the editor activates, accepts text, and submits successfully without the pointer-interception timeout.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- playwright, python
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100